· 6 years ago · Apr 12, 2019, 09:28 PM
1<?php
2
3$data = "test";
4$secretKey = ":AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; // dobio sam isti rezultat za ovaj key, mislim da je bitna duzina (32)
5
6$res = m8317a($secretKey, $data);
7echo "$res\n";
8
9
10function encrypt($key,$data,$iv){
11 $cipher = 'AES-256-CBC';
12 $options = OPENSSL_RAW_DATA|OPENSSL_ZERO_PADDING;
13 $raw = openssl_encrypt(
14 $data,
15 $cipher,
16 $key,
17 $options,
18 $iv
19 );
20 return $raw;
21}
22
23function pkcs5_pad($text, $blocksize){
24 $pad = $blocksize - (strlen($text) % $blocksize);
25 return $text . str_repeat(chr($pad), $pad);
26}
27
28function m8317a($key, $input) {
29 $ivString = 'sk7erfJeopw289dS';
30 $paddedInput = pkcs5_pad($input, 16); // 16 jer je za AES block size uvek 16
31 $result = encrypt($key, $paddedInput, $ivString);
32 return base64_encode($result);
33}
34
35// Linkovi (vecina koda je iz prvog, isto je radio java -> php):
36// https://stackoverflow.com/questions/52776030/replicating-javas-aes-cbc-pkcs5padding-encryption-in-php
37// https://stackoverflow.com/questions/34871579/how-to-encrypt-plaintext-with-aes-256-cbc-in-php-using-openssl
38
39?>