<div dir="ltr"><div>Hi,<br><br>I had to remove the 32 bits size tag from ?DH_P, ?DH_G too.<br></div>Now it's working.<br><br>Thank you.<br><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Nov 19, 2013 at 4:54 PM, Ingela Andin <span dir="ltr"><<a href="mailto:ingela.andin@gmail.com" target="_blank">ingela.andin@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hi!<br><br></div>The new API does not want any mpints (binaries with size tags) so if you hade mpints as input you will have to remove the size tag. If you used erlang integers there will not be any need to make any changes. <br>

<br></div>Regards Ingela Erlang/OTP team - Ericsson AB <br><div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/11/19 pablo platt <span dir="ltr"><<a href="mailto:pablo.platt@gmail.com" target="_blank">pablo.platt@gmail.com</a>></span><br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr"><div><div><div><div><div><div>Hi,<br><br></div>I'm trying to replace the deprecated crypto functions dh_generate_key/1 and dh_compute_key/3 with the new functions generate_key/2 and compute_key/3 but my app fails.<br>


<br></div><div>The byte_size of the results are different between the old and new API:<br></div><div>Old: <br>PublicKey - 132 Bytes<br>PrivateKey - 132 Bytes<br></div><div>Shared - 128 Bytes<br><br></div><div>New<br>PublicKey - 129 Bytes<br>


PrivateKey - 129 Bytes<br>Shared - 129 Bytes<br><br></div></div></div>Shouldn't the functionality and the size of the keys be the same?<br></div>Do I need to change something to make it work?<br><br></div>Code:<br><div>


<div><div><div><div><br><div><div>Old functions:<br>{PublicKey, PrivateKey} = crypto:dh_generate_key([?DH_P, ?DH_G]),<br>Shared = crypto:dh_compute_key(ClientKey, PrivateKey, [?DH_P, ?DH_G]),<br><<_:32, PublicKey2/binary>> = PublicKey. % Needed for my app with the old API<br>


<br>New functions:<br>{PublicKey, PrivateKey} = crypto:generate_key(dh, [?DH_P, ?DH_G]),<br>Shared = crypto:compute_key(dh, ClientKey, PrivateKey, [?DH_P, ?DH_G]),<br><<_:32, PublicKey2/binary>> = PublicKey.<br>


<br></div><div>% ?DH_P size is 132 Bytes<br></div><div>% ?DH_G size is 5 Bytes<br></div><div><br></div><div>Thanks<br></div></div></div></div></div></div></div></div>
<br></div></div>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br></blockquote></div><br></div></div></div></div></div>
</blockquote></div><br></div>