草庐IT

AES-256-CBC

全部标签

php - 如何使用 OpenSSL 在 PHP 中使用 AES-256 CBC 加密明文?

我试图在进入数据库之前加密我的php驱动网站中的个人消息等敏感用户数据。我在互联网上进行了一些研究,发现了一些需要记住的重要事项:永远不要使用mcrypt,它是废弃软件。AES基于Rijndael算法,至今未被破解。AES也被美国国家安全局推荐并用于美国政府的数据加密,但由于美国国家安全局推荐它,他们有可能轻易窃取我的用户数据。Blowfish也一直没有中断,但速度慢且不太受欢迎。因此,我决定先尝试使用AES-256cbc。但我仍然不确定我是否不应该将Blowfish视为更好的选择。因此,欢迎提出任何建议。我最关心的是,如何在php中加密数据?我在php文档中找不到关于此的好手册。正确

php - 拉维尔 5.4 : The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths

这是我的网络应用程序的Laravel5.4设置。页面加载时重复发生一件事。因此,我无法在我的页面上获取数据。运行时异常:唯一受支持的密码是具有正确key长度的AES-128-CBC和AES-256-CBC。反复出现这个错误如有任何帮助,我将不胜感激。 最佳答案 确保您的应用配置已设置key和密码。还要确保您的.env文件没有空的APP_KEY条目。最后运行:phpartisankey:generate 关于php-拉维尔5.4:TheonlysupportedciphersareAES-

php - 是否可以在 ECB 模式下将 AES 与 IV 一起使用?

来自http://php.net/manual/en/function.mcrypt-encrypt.php,我看到以下代码在ECB模式下使用AES和IV,但来自wikihttp://en.wikipedia.org/wiki/Block_cipher_modes_of_operation,它说欧洲央行不需要IV。是否真的可以在ECB模式下将AES与IV一起使用?在这种ECB模式下,与不使用时相比,额外的IV是否会提供更多的安全性? 最佳答案 无法在ECB模式下使用IV。然而,这有点没有实际意义,您应该这样做永远不要为任何事情使用E

java - Java 与 PHP 上的 AES256

到目前为止一直在逃避我的快速(漫长的夜晚)。我正在比较PHP和Java中的AES256并注意到差异。为简单起见,请忽略asciikey和空IV,它们将在生产中被替换。但我需要先克服这个问题,无法弄清楚我在哪里犯错:PHP:echobase64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128,"1234567890ABCDEF1234567890ABCDEF","Thisisatest",MCRYPT_MODE_CBC,"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"));Javabyte[]key="1234567890ABCDE

php - 主卡 migs md5 到 SHA-256 HMAC php

我有一个来自migs的网关,但它们已将md5更改为SHA-256HMAC我如何在我的代码中更改它我尝试了太多次但我收到错误400我认为我的代码存在一些问题现有代码country."'ORDERBYcountry_2_codeASC";$db1->query($q);$url="https://migs.mastercard.com.au/vpcpay";$SECURE_SECRET=MIGS_SS;$vpcURL=$url."?";$md5HashData=$SECURE_SECRET;$tax_total=$db->f("order_tax")+$db->f("order_shipp

Zend Server CE 5.5 中带有 sha256 的 PHP crypt() 会截断提供的盐

在从ZendServerCE5.1升级到ZendServerCE5.5的过程中,PHP也从5.3.5升级到5.3.8。在此转换之后,我正在处理的zend应用程序的登录功能突然中断。尝试调试它,它看起来像crypt()的实现没有反射(reflect)PHP手册,或者我误解了它。如果我敢猜测,是后者。我使用16个字符的长盐作为使用SHA256的更大盐的一部分,这在PHP手册中用作示例。$password=//stringenteredatlogin$salt='$5$rounds=250000$1234abcd5678defg$';在我对输入的密码进行哈希运算之后$hash=crypt($

javascript - 客户端 (JS) 和服务器 (PHP) 中的 AES 256

我正在尝试使用相同类型的操作(即AES-256)在服务器端和客户端加密和解密数据。在服务器上我使用PHP,客户端我使用CryptoJS到目前为止我只能在服务器上加密和解密客户端,请参见代码:JSvarsalt=CryptoJS.lib.WordArray.random(128/8);varkey256Bits500Iterations=CryptoJS.PBKDF2("SecretPassphrase",salt,{keySize:256/32,iterations:500});variv=CryptoJS.enc.Hex.parse('101112131415161718191a1b

java - 解密 TLS 1.2 AES-GCM 数据包

我正在开发一个Java程序来解密使用TLS_RSA_WITH_AES_128_GCM_SHA256密码的TLS1.2session。我使用wireshark录制了一个测试session。MasterSecret已为人所知。No.TimeProtocolLengthInfo40.000124000TLSv1.2166ClientHello60.000202000TLSv1.21074ServerHello,Certificate,ServerHelloDone80.001071000TLSv1.2393ClientKeyExchange,ChangeCipherSpec,Finished

java - AES加密在CFB模式下截断文本

我正在尝试从文件中读取数据并在CFB模式下使用无填充的AES加密数据'AES/CFB/NoPadding'。IV长16个字节。鉴于默认情况下AES使用16字节block,如果我使用CBC或除CFB之外的任何其他模式,我会考虑使用填充方案。CFB本质上不需要对明文进行填充。所以问题是,如果我的文件包含小于16字节的数据,则不会加密任何内容。如果它大于16个字节,则只有前16个字节被加密。这清楚地表明block大小正在启动,并且是否存在字节w.r.t.的下溢或溢出。block大小,然后丢弃该数据/字节。我不明白的是,在使用CFB时,我不需要填充数据......对吧!那么为什么AES的16字

Java AES加解密静态秘钥

我有一个应用程序需要在配置文件中存储一些secret密码,例如数据库和ftp密码/详细信息。我环顾四周,发现了很多使用AES的加密/解密解决方案,但我似乎无法弄清楚如何在不更改key的情况下使其工作。这意味着我可以加密和解密(使用相同的SecretKey),但要在重启等过程中保持持久性。我似乎无法让SecretKey保持不变。下面的例子展示了我的方法:Stringsecret=Encryptor.encrpytString("Thisissecret");Stringtest=Encryptor.decrpytString(secret);System.out.println(test