第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

XML 簽名驗(yàn)證失敗

XML 簽名驗(yàn)證失敗

這是我正在嘗試驗(yàn)證xml簽名的代碼。對(duì)于一個(gè)包含使用簽名算法證書簽名的 xml 的 xml 文件md2RSA,它可以正常工作。但是另一個(gè)包含使用簽名算法證書簽名的xml的xml SHA256withRSA,它失敗了。這是我試圖用來驗(yàn)證簽名驗(yàn)證的代碼: public static void main(String[] args)            throws ParserConfigurationException, SAXException, IOException, XMLSignatureException, XMLSecurityException    {        File f = new File("F:\\workspace\\signeddocument2.xml");        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();        dbFactory.setNamespaceAware(true);        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();        org.w3c.dom.Document doc = dBuilder.parse(f);        doc.getDocumentElement().normalize();        Element sigElement = (Element) doc.getElementsByTagNameNS(Constants.SignatureSpecNS, Constants._TAG_SIGNATURE)                .item(0);        XMLSignature signature = new XMLSignature(sigElement, f.toURI().toURL().toString());        boolean verified = false;        verified = signature.checkSignatureValue(signature.getKeyInfo().getPublicKey());        if (verified)        {            System.out.println("Signature verified successfully");        }        else        {            System.out.println("Signature verification failed.");        }    }
查看完整描述

2 回答

?
瀟瀟雨雨

TA貢獻(xiàn)1833條經(jīng)驗(yàn) 獲得超4個(gè)贊

似乎您的 xml 中缺少一個(gè)標(biāo)簽。


我在這里找到了一些信息:https ://www.w3.org/TR/2009/WD-xmldsig-core2-20091022/


如果您搜索“signname”,您會(huì)看到該規(guī)范需要一個(gè)標(biāo)簽:<C ID="signme" xmlns="&baz;"/>有完整的規(guī)范:


<A xmlns:n1="&foo;">

     <B xmlns:n2="&bar;">

       <Signature xmlns="&dsig;">   ...

         <Reference URI="#signme"/> ...

       </Signature>

       <C ID="signme" xmlns="&baz;"/>

     </B>

   </A>

您的 XML 沒有此標(biāo)記??赡苁窃颉?/p>


查看完整回答
反對(duì) 回復(fù) 2022-05-25
?
阿晨1998

TA貢獻(xiàn)2037條經(jīng)驗(yàn) 獲得超6個(gè)贊

我弄清楚了signature驗(yàn)證失敗的原因。XML與我試圖驗(yàn)證的 XML 相比,我正在簽名的名稱空間不同signature。這transformation導(dǎo)致了signature失敗。一旦我弄清楚了轉(zhuǎn)換,signature驗(yàn)證就起作用了。



查看完整回答
反對(duì) 回復(fù) 2022-05-25
  • 2 回答
  • 0 關(guān)注
  • 237 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)