草庐IT

c# - 在 PHP 中从 C# 复制相同的 AES 加密

我正在做一个项目,我有一个C#应用程序,它有一个加密类,可以执行字符串值的加密和解密。我现在想制作一个Web界面,以使用PHP与我的C#应用程序一起工作。我正在尝试执行与我的C#项目在我的PHP网站中执行的相同类型的加密,但我不知道我需要做什么。下面是我的C#应用程序的代码。publicstaticstringencrypt(stringencryptionString){byte[]clearTextBytes=Encoding.UTF8.GetBytes(encryptionString);SymmetricAlgorithmrijn=SymmetricAlgorithm.Crea

php - 在 Laravel 之外解密加密值

我如何在Laravel之外仅使用PHP解密使用Laravel4Encrypt类加密的字符串? 最佳答案 LaravelEncrypter类使用block大小为256位的Rijndael进行加密,这是由McryptPHP扩展提供的。Encrypter类使用两个简单的方法工作,encrypt()和decrypt()。下面的例子:既然你问的是如何“在Laravel之外”做到这一点:加密和解密由加密器类完成。Laravel源代码是公开的,这里是相关部分:getIvSize(),$this->getRandomizer());$value=b

php - Nginx 不显示 404 页面,而是在根目录中提供索引文件

我的Nginx服务器没有显示我的404页面。相反,每当尝试访问不存在的页面或目录时,它只会在我的Web文件夹的根目录中提供我的索引(.php)(没有相应的样式表)。这是/etc/nginx/sites-available下我自己的“默认”文件:server{listen80;listen[::]:80ipv6only=on;listen443ssl;listen[::]:443ipv6only=onssl;add_headerStrict-Transport-Securitymax-age=15768000;ssl_certificate/etc/nginx/ssl/server.cr

php - mcrypt_encrypt 初始化失败

我正尝试在CBC模式下使用256位key使用Rijndael密码对PHP中的某些数据进行加密,但由于某种原因,我收到以下错误消息:mcrypt_encrypt()模块初始化失败我的代码:$hashKey=hash('sha256',$key);$iv=hash('sha256',$hashKey);//------Cipher-------------key-------------Data-------------Mode---------IV--$encryptedQuestion=base64_encode(mcrypt_encrypt('MCRYPT_RIJNDAEL_256'

密码和哈希的 PHP AES 加密

今天我阅读了有关AES(A高级EncryptionS标准)的内容,我在问自己一些我不知道的问题有知识自己回答。我在维基百科上读到,AES即使用于绝密文件也是安全的,直到现在,还没有人找到破解它的方法。确实有一些尝试使用侧信道攻击,但由于它没有攻击加密本身,所以效果不佳。根据我所读到的内容,我想知道,我是否应该使用AES来加密我的数据库中的密码?我可以保存加密的密码,或者更确切地说,使用hash()函数来加密数据库中字符串的AES加密,从而以某种方式为其提供“双层”保护。我在这里可能完全错了,我只是想知道在数据库中存储加密字符串时不常见的原因是什么。我想那是因为有一种解密方法,但要解密它

php - 加密 - 解密 AES PHP

我想用AESCCM加密和解密一些数据!我设法在同一个php文件中执行此操作。但我希望能够将加密数据发送到另一个页面以对其进行解密。但不可能……但我发送了iv、标签和加密数据。你有解决办法吗?我有这些错误:Warning:openssl_decrypt():SettingtagforAEADcipherdecryptionfailedinadddata1.phponline18Fatalerror:UncaughtException:OpenSSLerror:error:0607A082:digitalenveloperoutines:EVP_CIPHER_CTX_set_key_len

php - 我可以在 ruby​​ 中复制 PHP 的 AES 加密的确切行为吗?

我正在用RubyonRails重建一个PHP网络应用程序,并且非常希望避免强制所有现有用户重置他们的加密密码。PHP站点将mcrypt_encrypt与AES-256-ECB结合使用,我终生无法使用ruby​​的OpenSSL获得相同的密文。我也无法解密它们(原则上这很好),因为实际存储在用户数据库中的是AES密文的MD5哈希值。我已经阅读了之前这些密切相关的问题和非常有用的答案:HowtomakeRubyAES-256-CBCandPHPMCRYPT_RIJNDAEL_128playwelltogetherPartII:HowtomakeRubyAES-256-CBCandPHPMC

javascript - 在 node.js 中重新创建 MCRYPT_RIJNDAEL_128

尝试在node.js中重新创建以下php加密代码:$size=mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128,MCRYPT_MODE_ECB);$iv=mcrypt_create_iv($size,MCRYPT_RAND);$msg=base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_128,'MY_KEY_LONG_STRING','PLAINTEXT',MCRYPT_MODE_ECB,$iv));试过这个:vartext='PLAINTEXT';varlen=text.length;for(vari=0;i从php

php - 具有 PKCS7 填充编码数据的 AES 256 具有一半 ECB 和一半 CBC block

我正在尝试解码从服务器返回的php中的数据:我知道数据已解码AES256并具有PKCS7填充但无法弄清楚它使用哪种block模式这是我的php函数:publicfunctiondecode($data){//AESdecode$iv=mcrypt_create_iv(GEServerConnection::FBENCRYPT_BLOCK_SIZE,MCRYPT_RAND);$data=mcrypt_decrypt(MCRYPT_RIJNDAEL_128,$this->cryptKey,base64_decode($data),MCRYPT_MODE_ECB,$iv);//return$

javascript - Node.js/javascript 像 PHP 中的 mcrypt_ecb 一样加密 AES-128

我有一个用AES-128加密ip地址的PHP代码:$ip="MY_IP";$secret="MY_KEY";$ip=@mcrypt_ecb(MCRYPT_RIJNDAEL_128,$secret,$ip,MCRYPT_ENCRYPT);$encrypted=bin2hex($ip);//encrypted:2854edb405cb7230ba1f4b87acddba8a我需要做的是使用javascript/node.js编写相同的代码。我在cryptonode.jsnative模块中进行了搜索,但无法重现相同的结果:varcrypto=require('crypto');varip="