簡體   English   中英

生成文件的數字簽名

[英]Generate digital signature of a file

我目前正在嘗試開發一種可以對任何類型的文檔進行數字簽名的應用程序。 我已經根據本教程聲明了GenSig類。 但是,在我的應用程序中,應該有用於輸入文件的GUI。 所以我有;

File file = jFileChooser2.getSelectedFile();

FileInputStream fin = new FileInputStream(file);
byte fileContent[] = new byte[(int)file.length()];
fin.read(fileContent);            

String strFileContent = new String(fileContent);           

GenSig gensig = new GenSig();        
GenSig.main(strFileContent); 

它在行GenSig.main(strFileContent);上拋出了一個錯誤GenSig.main(strFileContent); 根據GenSig類的全部來源,變量應為String[] args ,因此無法編譯應用程序。 我假設問題出在字符串的類型上,而不是數組,但是我不知道我在firts行上聲明了哪個數組,File對象的哪個變量,我需要使用它作為輸入。

我知道我做錯了,很不幸,在Java中,我只是初學者,所以我需要一些幫助。

  • 我應該插入文件對象中的哪個變量作為GenSig類的輸入?

  • 有沒有更簡單的方法來用Java簽名文檔?

如果您按照本教程的字母進行操作,則應將要“簽名”的文件名作為參數傳遞:

final File file = jFileChooser2.getSelectedFile();
GenSig.main(new String[] {file.getAbsolutePath()});

請注意,由於您是靜態調用main方法,因此實際上不需要創建GenSig類的實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM