<div dir="ltr"><div><div><div>came back with example:<br><br></div>Encryption part is a Perl script:<br>use strict;<br>use warnings;<br>use MIME::Base64;<br><br>use Crypt::CBC;<br>#use Digest::HMAC_SHA1 qw(hmac_sha1 hmac_sha1_hex);<br>use PHP::Serialization qw(serialize unserialize);<br><br>my $pt = 'a:10:{s:6:"adresa";s:89:"Address 2 TEST \xc3\x84\xc2\x83\xc3\x83\xc2\xae\xc3\x88\xc2\x99\xc3\x88\xc2\x9b\xc3\x88\xc2\x99\xc3\x88\xc2\x9bbl 7bap 71district XXXBucure\xc3\x88\xc2\x99tiJUDE\xc3\x88\xc2\x9a031905RO";s:4:"info";i:1460382;s:7:"urlback";s:41:"<a href="https://192.162.16.116:8020/snep_response">https://192.162.16.116:8020/snep_response</a>";s:4:"cuip";s:18:"Cererea nr 1460382";s:6:"idtaxa";i:5001;s:5:"email";s:16:"<a href="mailto:xxx123@gmail.com">xxx123@gmail.com</a>";s:4:"nume";s:55:"\xc3\x88\xc2\x99 \xc3\x88\xc2\x9b \xc3\x84\xc2\x83 \xc3\x83\xc2\xae \xc3\x83\xc2\xa2 \xc3\x83\xc2\x82 \xc3\x83\xc2\x8e \xc3\x84\xc2\x82 \xc3\x88\xc2\x98 \xc3\x88\xc2\x9a u\xc3\x83\xc2\xa7";s:3:"cui";s:18:"Cererea nr 1460382";s:9:"idnomunic";i:13;s:4:"suma";d:262.69;}';<br><br>print $pt, "\n";<br><br>my $key = "12345678900987654321001234567890";<br>my $cipher = Crypt::CBC->new(<br>                   -key    => $key,     <br>                -cipher => 'Blowfish',<br>                -header => 'randomiv' <br>);<br>                <br>        #       print "$pt\n";<br>my $encpt = $cipher->encrypt($pt);<br>print "\n$encpt", "\n";<br><br>print "\n", encode_base64($encpt), "\n";<br><br></div><div>## TEST<br></div><div>my $decpt = $cipher->decrypt($encpt);<br>print "\n$decpt", "\n";<br><br><br></div>I want this  (Base64 encoded) quantity decrypted in Erlang part:<br>$ erl<br>Erlang/OTP 18 [erts-7.0] [source] [64-bit] [smp:2:2] [async-threads:10] [kernel-poll:false]<br><br>Eshell V7.0  (abort with ^G)<br>1> f(B), B="UmFuZG9tSVYGr2WfCVKA0rvdisU2mA+OGo4yopGlUsszoG+V3vXRifqRM+YkAYWzdodx0LdyYJC7cwvY+iRGytQxUBOpOjEBvvhXRFyTu88+FeWPh2nZ28BDLqYPgg5tQujWYlipdrafH6XUzgpXK8QMZ/JpgIYYHZ3b8te2iWU3YsCo76/2W6n1D8zyWSdJ9owr/KtmrYE4FqLszvg4Vj0l62Q95sXNQOBb7g0GwuwJm6CRbLY6FmVDkFCPzqKf/QZbWASfIFokmfhnHR+Rpc8y2dz+eJjJn0LeFwajcSCf78IoZ1j8BW02mcyQFji/e/TfuqImRrhFptBlvMggu6g6dksM4iCW8E63y2KvO2rCbnbIyapENcZaNtfsUkw/WQNGP72VDvZbHeb/E1NIwnbsOO5qHnzMAi2SFVXSMr+k6mIS+R5wKDvkquB7I1Vho5SVdnjE1LtaetLDPF8kFNh09ig51OPCQyezpEsIPBI+U9mWpAyZTJU7YtnZUFY4oA4tbMPUthkOE2E0qIQT7OL0hwTyHsn/YFCyKu7JqnEU9UaCItb8SteLpb4ZlGJsoPxdZPnaBJJniPhod+0a7mDuo/N+hijk6rHEs2hXeUNgSSyoMVylMAuQyqDJMuOWMWMNWlr/HjpIWiRw6h2F5rrR8peV20sNXo9MHdcWG/XbZdUlGwfkHgi23PtcO/fpkdQ3UTRmOcm3I3KG2w8YAc10434pbs2NYihBl7v4Rx5H0NkJePPpRzHsavYO8QH5R9INzUh0yYXgz5jWpQbqSp7FMVYnwLqEgLoXt0r7WQqU+9tgyyPQxfRZQd5URs5QxwoGC+zgDqgLCdNzdzanePh5IfCsDoeUJbZ3C4SAGxiZ+OPZYu8ixM/sYqjQmPgmXs1a7X1VthbNLxrSp5pm2cjyTRal+AFr".<br>2><br>2>f(Bdec),Bdec = base64:decode(B). <br>3>Key = hexstr2bin("12345678900987654321001234567890").<br>4><<IvSpec:8/binary, IV:8/binary, Rest/binary>> = Bdec.<br>5>f(CifDec),CifDec = crypto:block_decrypt(blowfish_cbc, Key, IV, Rest).<br>6>io:format("~s~n", [CifDec]).<br></div>---output garbage---[should be $pt variable from Perl script]<br>7>erlang:size(Rest).<br>680<br>8> 680/8.<br>85.0<br>9>IvSpec.                                                                                    <br><<"RandomIV">><br>10><br><div><br><br>...<br><br>Notes:<br>hexstr2bin/1 is taken from otp_src_18.0/lib/crypto/test/crypto_SUITE.erl<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 9, 2015 at 7:06 PM, Dmitry Kolesnikov <span dir="ltr"><<a href="mailto:dmkolesnikov@gmail.com" target="_blank">dmkolesnikov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I would double check that you are<br>
 * using same key on both side<br>
 * IV is properly serialized and de-serialize to packet frame<br>
<br>
BTW, What is the size of Rest? and Can you share minimal viable example of encryption?<br>
<span class="HOEnZb"><font color="#888888"><br>
- Dmitry<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
> On Nov 9, 2015, at 11:38 AM, Bogdan Andu <<a href="mailto:bog495@gmail.com">bog495@gmail.com</a>> wrote:<br>
><br>
><br>
> hi,<br>
><br>
> I really need some pointers about this issue<br>
><br>
> as i tried all kinds of combinations of IV and body<br>
> to be decrypted.<br>
><br>
> Am i missing something or there is a bug in cipher<br>
> blowfish_cbc ?<br>
><br>
><br>
><br>
> On Thu, Nov 5, 2015 at 3:51 PM, Bogdan Andu <<a href="mailto:bog495@gmail.com">bog495@gmail.com</a>> wrote:<br>
>  Data to be decrypted (arrived on socket, etc) is:<br>
> <<IvSpec:8/binary, IV:8/binary, Rest/binary>> = EncryptedData<br>
><br>
> IV is ectracted form the 8-byte prepanded value preceding<br>
> IvSpec which has the value RandomIV.<br>
><br>
> decryption of Rest should be initialized with IV.<br>
><br>
><br>
> On Thu, Nov 5, 2015 at 3:38 PM, Radoslaw Gruchalski <<a href="mailto:radek@gruchalski.com">radek@gruchalski.com</a>> wrote:<br>
> You say your data is:<br>
><br>
> <<IvSpec>> == <<RandomIv>><br>
><br>
> But you read:<br>
><br>
> Is your data <<IvSpec:8/binary, IV:8/binary, Rest/binary>><br>
><br>
> Should it not be just:<br>
><br>
> <<IV:8/binary, Rest/binary>><br>
><br>
> ?<br>
><br>
> Sent from Outlook<br>
><br>
> _____________________________<br>
> From: Bogdan Andu <<a href="mailto:bog495@gmail.com">bog495@gmail.com</a>><br>
> Sent: Thursday, November 5, 2015 2:26 p.m.<br>
> Subject: [erlang-questions] blowfish cbc mode decrypt<br>
> To: Erlang <<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a>><br>
><br>
><br>
><br>
> Hi,<br>
><br>
> I have a stream of data called EncryptedData (with randomiv header specification).<br>
> I want to decrypt  using:<br>
> crypto:block_decrypt(blowfish_cbc, hexstr2bin(Key), IV, Rest).<br>
><br>
> where:<br>
><br>
> EncryptedData is formatted as follows:<br>
> <<IvSpec:8/binary, IV:8/binary, Rest/binary>><br>
><br>
> IvSpec == <<"RandomIV">><br>
><br>
> However the decryption does not works and garbage is generated<br>
> (the function  ) .<br>
><br>
> What could be done given the fact that IV is an 8-byte quantity<br>
> the Key is formatted according to crypto test suites and is 16 bytes long<br>
><br>
> Am I missing something?<br>
><br>
> Thanks,<br>
><br>
> Bogdan<br>
><br>
><br>
><br>
><br>
</div></div><div class="HOEnZb"><div class="h5">> _______________________________________________<br>
> erlang-questions mailing list<br>
> <a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
> <a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br>
</div></div></blockquote></div><br></div></div>