草庐IT

RIJNDAEL

全部标签

c# - 使用 PHP 和 c# 的 Mcrypt 和 base64

我在两个平台上编写了相同的方法,我认为这应该会产生相同的结果,但它并没有发生。我用相同的key加密了相同的文本,结果不同。有人能弄清楚为什么会这样吗?字符串:这是测试key:1234567812345678PHP加密字符串:ybUaKwQlRNwOjJhxLWtLYQ==C#加密字符串:r2YjEFPyDDacnPmDFcGTLA==C#函数staticstringEncrypt(stringplainText,stringkey){stringcipherText;varrijndael=newRijndaelManaged(){Key=Encoding.UTF8.GetBytes(

php - Delphi DEC库(Rijndael)加密

我正在尝试使用DEC3.0库(DelphiEncryptionCompediumPartI)在Delphi7中加密数据并通过POST将其发送到PHP脚本,我在其中使用mcrypt对其进行解密(RIJNDAEL_256,ECB模式)。德尔福部分:usesWindows,DECUtil,Cipher,Cipher1;functionEncryptMsgData(MsgData,Key:string):string;varRCipher:TCipher_Rijndael;beginRCipher:=TCipher_Rijndael.Create(KeyStr,nil);RCipher.Mod

php - 第二部分 : How to make Ruby AES-256-CBC and PHP MCRYPT_RIJNDAEL_128 play well together

这个问题是我上一个问题的延续,关于HowtomakeRubyAES-256-CBCandPHPMCRYPT_RIJNDAEL_128playwelltogether.我现在已经开始工作了,但我仍在努力走向另一个方向。PHP生成的密码似乎包含所提供的所有信息,但我无法获得Ruby代码来无误地解密它。这是我用来生成密码的PHP代码:$cleartext="Who'sthecleverboy?";$key=base64_decode("6sEwMG/aKdBk5Fa2rR6vVw==\n");$iv=base64_decode("vCkaypm5tPmtP3TF7aWrug==");$cry

php - 使用未定义常量 MCRYPT_RIJNDAEL_128 - 假定为 'MCRYPT_RIJNDAEL_128'

我已成功安装Laravel,但在运行phpartisanserve并转到localhost:8000后,我收到此错误:UseofundefinedconstantMCRYPT_RIJNDAEL_128-assumed'MCRYPT_RIJNDAEL_128'我检查了localhost:8888上的phpinfo(),它说mcrypt已正确安装。然而我唯一能想到的是,也许我的路径是错误的?在我的.bash_profile我有PATH=/usr/local/bin:$PATH每次我尝试运行Laravel命令时,我都必须在终端中输入:exportPATH="~/.composer/vendo

php - 如何让 Ruby AES-256-CBC 和 PHP MCRYPT_RIJNDAEL_128 很好地协同工作

我正在生成要从Ruby堆栈发送到PHP堆栈的数据。我在Ruby端使用OpenSSL::Cipher库,在PHP中使用“mcrypt”库。当我在Ruby中使用“aes-256-cbc”(256位block大小)进行加密时,我需要在PHP中使用MCRYPT_RIJNDAEL_128(128位block大小)来解密它。我怀疑Ruby代码被破坏了,因为cipher.iv_len是16;我认为应该是32:>>cipher=OpenSSL::Cipher::Cipher.new('aes-128-cbc')=>#>>cipher.key_len=>16>>cipher.iv_len=>16>>ci

c# - 指定的初始化向量 (IV) 与该算法的 block 大小不匹配

我正在研究一种基本的加密方法。我正在使用RijndaelManaged。我很久以前从某个地方得到这段代码,但不记得在哪里。我的代码之前可以正常工作,但有些东西发生了变化,我不太明白。当我运行我的代码时,出现以下错误;Specifiedinitializationvector(IV)doesnotmatchtheblocksizeforthisalgorithm.这是我的代码:stringtextToEncrypt="TESTSTRING";intkeySize=256;stringhashAlgorithm="SHA1";stringpassPhrase="AH!PSB0%FGHR$"

c# - 指定的初始化向量 (IV) 与该算法的 block 大小不匹配

我正在研究一种基本的加密方法。我正在使用RijndaelManaged。我很久以前从某个地方得到这段代码,但不记得在哪里。我的代码之前可以正常工作,但有些东西发生了变化,我不太明白。当我运行我的代码时,出现以下错误;Specifiedinitializationvector(IV)doesnotmatchtheblocksizeforthisalgorithm.这是我的代码:stringtextToEncrypt="TESTSTRING";intkeySize=256;stringhashAlgorithm="SHA1";stringpassPhrase="AH!PSB0%FGHR$"

php - 使用 Go 和 PHP 进行 AES 加密

我在Go和PHP中使用AES加密。但是这两种语言都不加密/解密彼此的密文。以下我在php中尝试过classCrypto{private$encryptKey="keyforencryption";private$iv='ivusedforencrypt';private$blocksize=16;publicfunctionencrypt($toEncrypt){$iv_size=mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256,MCRYPT_MODE_CFB);//$iv=mcrypt_create_iv($iv_size,MCRYPT_RAND);ret

php - 使用 Go 和 PHP 进行 AES 加密

我在Go和PHP中使用AES加密。但是这两种语言都不加密/解密彼此的密文。以下我在php中尝试过classCrypto{private$encryptKey="keyforencryption";private$iv='ivusedforencrypt';private$blocksize=16;publicfunctionencrypt($toEncrypt){$iv_size=mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256,MCRYPT_MODE_CFB);//$iv=mcrypt_create_iv($iv_size,MCRYPT_RAND);ret

c# - 使用 Rijndael 进行跨平台(php 到 C# .NET)加密/解密

我目前在解密由phpmcrypt加密的消息时遇到一些问题。php代码如下:";?>然后将加密的消息发送到ASP.NET平台(C#)。但是,我在保留解密顺序时遇到问题(base64解码为urldecode)。我在ASP.NET中的代码如下(iv和key与php中的相同):publicstringDecode(stringstr){byte[]decbuff=Convert.FromBase64String(str);returnSystem.Text.Encoding.UTF8.GetString(decbuff);}staticpublicStringDecryptRJ256(stri