2017-02-16 133 views
0

我正在使用c#(不是Genexus)的環境,我需要使用Genexus Encrypt64方法使用的TwoFish算法的相同實現來加密數據。Genexus Encrypt64 TwoFish實現

我有加密密鑰和一些輸入(未加密)和輸出(加密),我應該產生的例子。 我有prioblems,因爲我從網上獲得了一些TwoFish算法的實現,但沒有一個與Genexus中使用的算法相同。 另外,我嘗試了一些在線工具,但都沒有工作。

有沒有人遇到過這個問題? 除了TwoFish加密以外,還有其他什麼操作嗎? Genexus使用什麼模式進行TwoFish加密?}

在此先感謝!

回答

3

我發現了大約Twofish的和GeneXus這個信息:

http://wiki.genexus.com/commwiki/servlet/wiki?8386,Encrypt64%20Function

這是算法: https://app.assembla.com/spaces/genexus_standard_classes/subversion/source/23/X_Ev2_U6/CSharp/GxClasses/Twofish_Algorithm.cs

如果這沒有幫助。請詳細說明您的問題,例如您有哪些 輸入以及預期輸出是什麼。並與預期產出進行比較。 當然你需要與GeneXus版本交換數據。

+1

嗨Paulo,感謝您的回覆。這似乎是一個非常有用的代碼,因爲它似乎是Genexus使用的代碼。 我有輸入作爲字符串和密鑰作爲字符串。我應該如何撥打電話? 我使用的數據是: 輸入:14年9月10日 重點:dff60ebc093d5d12d90968cee4d55167 輸出應該是:jqcPVMd5ykivknralaM0LA == 謝謝! – gmesorio

+0

另請注意,GeneXus在'application.key'文件中查找加密密鑰,然後在程序集'KeyResolver.dll'中查找,如果找不到(非常常見),它使用密鑰'6A23DB2B6A619585C8B445D5949099E5'。您可以查看[Encryption.cs]中的代碼(https://app.assembla.com/spaces/genexus_standard_classes/subversion/source/23/X_Ev2_U6/CSharp/GxClasses/Encryption.cs) – Dinei