Update libsignal-protocol v0.13.0

* libsignal.Curve is now a synchronous interface.
* libsignal.Curve.async is now the asynchronous interface.
* Fixes bugs in session management.

// FREEBIE
This commit is contained in:
lilia 2016-05-18 12:45:33 -07:00
parent f216262298
commit 15e964de81
4 changed files with 406 additions and 275 deletions

View file

@ -16,7 +16,7 @@ ProvisioningCipher.prototype = {
var ivAndCiphertext = message.slice(0, message.byteLength - 32);
var ciphertext = message.slice(16 + 1, message.byteLength - 32);
return libsignal.Curve.calculateAgreement(
return libsignal.Curve.async.calculateAgreement(
masterEphemeral, this.keyPair.privKey
).then(function(ecRes) {
return libsignal.HKDF.deriveSecrets(
@ -30,7 +30,7 @@ ProvisioningCipher.prototype = {
var provisionMessage = textsecure.protobuf.ProvisionMessage.decode(plaintext);
var privKey = provisionMessage.identityKeyPrivate.toArrayBuffer();
return libsignal.Curve.createKeyPair(privKey).then(function(keyPair) {
return libsignal.Curve.async.createKeyPair(privKey).then(function(keyPair) {
return {
identityKeyPair : keyPair,
number : provisionMessage.number,
@ -42,7 +42,7 @@ ProvisioningCipher.prototype = {
getPublicKey: function() {
return Promise.resolve().then(function() {
if (!this.keyPair) {
return libsignal.Curve.generateKeyPair().then(function(keyPair) {
return libsignal.Curve.async.generateKeyPair().then(function(keyPair) {
this.keyPair = keyPair;
}.bind(this));
}