91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 11KB
    文件類型: .zip
    金幣: 2
    下載: 1 次
    發布日期: 2022-09-21
  • 語言: Java
  • 標簽: DSA??signature??java??

資源簡介

來自StackOverflow的 Jeffrey Walton 的文章中dsa數字簽名算法的java實現,包括生成簽名,消息簽名,驗證簽名三個功能的實現。

資源截圖

代碼片段和文件信息

package?JavaInteropSign;

import?java.io.*;
import?java.security.*;
import?java.security.spec.*;
import?javax.swing.JOptionPane;

/**
?*?@author?jeffrey?walton
?**/
public?class?Main?{

??static?String?ALGORITHM?=?“DSA“;
??
??public?static?void?main(String[]?args)?{
????try?{

??????CreateDSAKeys();

??????SignDSAMessage();
??????
??????VerifyDSAMessage();

????}?catch?(Exception?e)?{
??????System.err.println(“Main:?Exception?“?+?e.toString());
????}
??}

??private?static?void?VerifyDSAMessage()?{

????try?{
??????
??????//?Load?the?public
??????PublicKey?publicKey?=?LoadPublicKey(“public.dsa.java.key“);

??????//?Load?the?message?from?file
??????FileInputStream?mis?=?new?FileInputStream(“dsa.java.msg“);
??????byte[]?message?=?new?byte[mis.available()];
??????mis.read(message);?mis.close();

??????//?Display?the?resurrected?string
??????JOptionPane.showMessageDialog(null
??????????new?String(message?0?message.length?“UTF-8“));???????

??????//?Load?the?signature?of?the?message?from?file
??????FileInputStream?sis?=?new?FileInputStream(“dsa.java.sig“);
??????byte[]?signature?=?new?byte[sis.available()];
??????sis.read(signature);?sis.close();

??????//?Initialize?Signature?object
??????Signature?verifier?=?Signature.getInstance(ALGORITHM);
??????verifier.initVerify(publicKey);

??????//?Load?the?message?into?the?Verifier?object
??????verifier.update(message);

??????//?Verify?the?Signature?on?the?Message
??????boolean?result?=?verifier.verify(signature);
??????
??????StringBuilder?sb?=?new?StringBuilder();
??????if(?result?)
??????{
????????sb.append(“Message?Verified:\n“);
????????sb.append(new?String(message?0?message.length?“UTF-8“));
??????}
??????else
??????{
????????sb.append(“Message?Not?Verified“);
??????}
??????
??????JOptionPane.showMessageDialog(null?sb.toString());

????}?catch?(Exception?e)?{
??????System.err.println(“VerifyDSAMessage:?“?+?e.toString());
????}
??}
??
??private?static?void?SignDSAMessage()?{

????try?{
??????//?Retrieve?the?Private?Key
??????PrivateKey?privateKey?=?LoadPrivateKey(“private.dsa.java.key“);

??????//?Create?the?signer?object
??????Signature?signer?=?Signature.getInstance(ALGORITHM);
??????signer.initSign(privateKey?new?SecureRandom());

??????//?Prepare?the?Message
??????String?s?=?“Crypto?Interop:?\u9aa8“;

??????//?Save?the?binary?of?the?String?which?we?will?sign
??????byte[]?message?=?s.getBytes(“UTF-8“);

??????//?Insert?the?message?into?the?signer?object
??????signer.update(message);
??????byte[]?signature?=?signer.sign();

??????//?mos:?message?filestream
??????//?sos:?signature?filestream
??????FileOutputStream?mos?=?new?FileOutputStream(“dsa.java.msg“);
??????mos.write(message);

??????FileOutputStream?sos?=?new?FileOutputStream(“dsa.java.sig“);
??????sos.write(signature);

????}?catch?(Exception?e)?{
??????System.err.println(“SignDSAMessage:?“?+?e.toString());
????}
??}

??private?static?PublicKey?LoadPublicKey(String?filename)?{

????PublicKey?key?=?null;

????try?{

??????FileInputStrea

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\build\
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\build\classes\
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\build\classes\JavaInteropSign\
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\build\test\
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\build\test\classes\
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\build\test\results\
?????文件??????????85??2008-04-25?19:17??JavaInteropSign\manifest.mf
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\nbproject\
?????文件???????33178??2008-04-25?19:17??JavaInteropSign\nbproject\build-impl.xml
?????文件?????????455??2008-04-25?19:17??JavaInteropSign\nbproject\genfiles.properties
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\nbproject\private\
?????文件?????????188??2008-04-25?19:17??JavaInteropSign\nbproject\private\private.properties
?????文件????????1824??2008-04-25?19:17??JavaInteropSign\nbproject\project.properties
?????文件?????????585??2008-04-25?19:17??JavaInteropSign\nbproject\project.xml
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\src\
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\src\JavaInteropSign\
?????文件????????5070??2008-04-25?23:12??JavaInteropSign\src\JavaInteropSign\Main.java
?????目錄???????????0??2008-04-25?23:17??JavaInteropSign\test\
?????目錄???????????0??2008-04-26?10:48??JavaInteropSign\

評論

共有 條評論