2009-08-20 81 views
0

我想發送一個帶外消息(不必擔心它是如何到達的)到我在遠程機器上編寫的程序。我希望程序通過在郵件中附加數字簽名來保證郵件的合法性。該消息將少於200個字符。需要使用帶外密鑰分發的原始公鑰簽名

看來基於公鑰的簽名是我想要使用的。我可以在程序中嵌入公鑰。

我知道該程序很容易受到任何修改它的人的攻擊,但我並不擔心這一點。後果並不可怕。

我已經瀏覽了MSDN和網絡,但潛水的前景令人望而生畏。我正在寫直接C++,沒有NET框架或其他花哨的東西。我沒有經驗,包括NET框架的東西,在以前的嘗試中運氣不大。

任何人都可以指出我在一些非常基本的資源,讓我開始?

我想知道

  1. 如何生成公鑰和私鑰
  2. 如何對消息進行簽名
  3. 如何驗證簽名

回答

0

你可以嘗試在看Keyczar library。它爲加密函數提供了高級抽象,旨在使開發人員可以很容易地正確執行加密。作爲一個額外的好處,它有C++綁定。

還有Cryptlib已經有一段時間了,NaCl。與Keyczar一樣,這些庫旨在爲常見的加密函數提供高級抽象。

0

gpgme是一個用C語言編寫的用於GnuPG的高級加密API,但是對多種語言都有綁定。 GnuPG具有出色的文檔並且易於使用,因此您可以在命令行上「手動」進行遊戲,並瞭解關鍵操作的工作方式,然後在API中查找您的代碼所需的函數。