2015-05-04 231 views
-3

我需要一个AES函数来加密/与模型ECB解密,使用对称密钥PKCS5PaddingC#AES ECB pkcs5pad

但(128位的AES参数创建)我有自 IM小白一些问题,这在C#中

在PHP

近似为这个,我需要在ASP.net创建(C#):

PKCS5 pading:

function pkcs5_pad($text, $blocksize) 
{ 
    $pad = $blocksize - (strlen($text) % $blocksize); 
    return $text . str_repeat(chr($pad), $pad); 
} 

功能编码AES(ECB - pkcs5pad),$数据是数据不编码

function base64_encode_encrypt_aes_ecb_pkcs5pad($data, $sim_key) { 
    return trim (base64_encode (mcrypt_encrypt (MCRYPT_RIJNDAEL_128, $sim_key, pkcs5_pad ($data, mcrypt_get_block_size (MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB)), MCRYPT_MODE_ECB, mcrypt_create_iv (mcrypt_get_iv_size (MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB), MCRYPT_RAND)))); 
} 

要获得sim_key(对称的密钥)

function gen_sim_key() { 
    return substr (md5 (uniqid (microtime())), 0, 16); 
} 

能帮助我吗?

回答

0

这个库似乎提供你所需要的:

http://www.bouncycastle.org/csharp/

从功能列表:

对称密钥垫衬:ISO10126d2,ISO7816d4,PKCS#5/7,TBC,X. 923和零字节。

相关问题