Skip to content

Releases: charlesportwoodii/libsodium-uwp

1.0.16.0

24 Jun 15:20
1.0.16.0
Compare
Choose a tag to compare

1.0.16.0 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

What's New?

  • This is a minor release that contains no new features.
  • Bumps libsodium library to 1.0.16
  • Compiler now uses vsdtdc++:latest toolchain

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

    <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretStream" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: 7627a25542f308990c843d45ebfd510b  libsodium-uwp.1.0.160.symbols.nupkg
sha1: 188eb8d7509856055d3ffb4438cefa76b536354b  libsodium-uwp.1.0.160.symbols.nupkg
sha256: 51d899d8ccfe0747672e85b20367afa273d68fd304cfbd2f08aad0ce4bb0cedb  libsodium-uwp.1.0.160.symbols.nupkg

md5: 0b836a2f6b779a34b521bf286c778731  libsodium-uwp.1.0.160.nupkg
sha1: 8c6656890af0e4d53b4cb088cc6ee3def1c1d69f  libsodium-uwp.1.0.160.nupkg
sha256: 3177614a73098f3269c2cc93aeed28f2b4922ffbf34a2f08ed0182d0ee153744  libsodium-uwp.1.0.160.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.15.2

11 Oct 02:04
1.0.15.2
Compare
Choose a tag to compare

1.0.15.2 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

What's New?

  • Corrects an implementation error with SecretStreams which the tag parameter on the Pull method did not return the tag associated to the Stream.

    var key = SecretStream.GenerateKey();
    var header = SecretStream.GenerateHeader();
    var encrypter = new SecretStream(key, header, SecretStream.MODE_PUSH);
    var decrypter = new SecretStream(key, header, SecretStream.MODE_PULL);
    
    var message1 = "Hello, World!";
    var message2 = "{ \"json\": \"data\" }";
    var message3 = "Some more random messaging";
    
    var ciphertext1 = encrypter.Push(message1);
    encrypter.Rekey();
    var ciphertext2 = encrypter.Push(message2, SecretStream.TAG_PUSH);
    var ciphertext3 = encrypter.Push(message3, SecretStream.TAG_FINAL);
    
    int tag = -1;
    var d1 = decrypter.Pull(ciphertext1, out tag);
    // tag == Sodium.SecretStream.TAG_MESSAGE
    decrypter.Rekey();
    var d2 = decrypter.Pull(ciphertext2, out tag);
    // tag == Sodium.SecretStream.TAG_PUSH
    var d3 = decrypter.Pull(ciphertext3, out tag);
    // tag == Sodium.SecretStream.TAG_FINAL

See https://github.com/charlesportwoodii/libsodium-uwp/blob/1.0.15.2/docs/SecretStream.md and https://download.libsodium.org/doc/secret-key_cryptography/secretstream.html for more information on Secret Streams.

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

    <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretStream" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: dad25dc82ec3a7fb976f1d9bb0efb952  libsodium-uwp.1.0.152.nupkg
sha1: 48d96d994e25f83166187ec85c412eb1107dbd23  libsodium-uwp.1.0.152.nupkg
sha256: 6fad0ebabc9a4189053ddc07e8d76830f6b0ddf0700e9df584665b4b632adc34  libsodium-uwp.1.0.152.nupkg
md5: 45bfe513375f17c59bcf4cc522f7578b  libsodium-uwp.1.0.152.symbols.nupkg
sha1: c7480d7df34191d82e22d3be548d2ffbb6a49374  libsodium-uwp.1.0.152.symbols.nupkg
38c09880ed9a9880af0be958361c6e6a37b582414f4e0e2d92d0f006d11f95e9  libsodium-uwp.1.0.152.symbols.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.15.1

09 Oct 20:42
1.0.15.1
Compare
Choose a tag to compare

1.0.15.1 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

What's New?

  • Adds support for Secret Streams.

    // Starting on the sender
    // Create a new key
    var key = Sodium.SecretStream.GenerateKey();
    // Create a new header
    var header = Sodium.SecretStream.GenerateHeader();
    
    // Create a new stream in PUSH mode to push new messages onto the stream.
    var encrypter = new Sodium.SecretStream(key, header, Sodium.SecretStream.MODE_PUSH);
    
    var message1 = "Hello, World!";
    var message2 = "{ \"json\": \"data\" }";
    
    var ciphertext1 = encrypter.Push(message1);
    var ciphertext2 = encrypter.Push(message2, Sodium.SecretStream.TAG_FINAL);
    
    // On the peer, create a PULL stream, and pull in the stream as it comes in from the peer and decrypt it
    var decrypter = new Sodium.SecretStream(key, header, Sodium.SecretStream.MODE_PULL);
    // System.Text.Encoding.UTF8.GetBytes(message1) == d1
    var d1 = decrypter.Pull(ciphertext1);
    // System.Text.Encoding.UTF8.GetBytes(message2) == d2
    var d2 = decrypter.Pull(ciphertext2, Sodium.SecretStream.TAG_FINAL);

See https://github.com/charlesportwoodii/libsodium-uwp/blob/1.0.15.1/docs/SecretStream.md and https://download.libsodium.org/doc/secret-key_cryptography/secretstream.html for more information on Secret Streams.

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

    <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretStream" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: c79cdaf054fe9eddd0ceb1e0bd6fe567  libsodium-uwp.1.0.151.nupkg
sha1: 2e0848f3ae2eebf6e48f03f1dfa9a930ff16c7e4  libsodium-uwp.1.0.151.nupkg
sha256: 0666fe5effd11e7229cd51e7b0c648a4728493c064e661f7a00f2e69b4877d71  libsodium-uwp.1.0.151.nupkg
md5: ebf4904e66c8a9b8184d8e284688d322  libsodium-uwp.1.0.151.symbols.nupkg
sha1: b8a645b640c704a9ddd9389780c444e2df59e330  libsodium-uwp.1.0.151.symbols.nupkg
sha256: bd7ca4f9c41deb6f8a782a40101a208426b5c5e835a44e6955eb675494def7db  libsodium-uwp.1.0.151.symbols.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.15.0 Release

03 Oct 15:44
1.0.15.0
Compare
Choose a tag to compare

1.0.15.0 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

What's New?

  • Bumps libsodium dependency to 1.0.15.

  • Fixes a bug with PasswordHash.DetermineAlgorithm where Argon2id hashes would be returned as Argon2i instead.

  • Adds support for PasswordHash.NeedsRehash

    public static bool Sodium.PasswordHash.NeedsRehash(String hash, PasswordHashOptions options);

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

    <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: a182758a50713d3afa01e5498db1f6d2  libsodium-uwp.1.0.150.nupkg
sha1: 8752f396ba045f3b1e2c77cc0df324405c144317  libsodium-uwp.1.0.150.nupkg
sha256: ba7f03ec9d07fdbd371b479a415ea606d829bcb7c28fa5a41f8ef7ebbb516df1  libsodium-uwp.1.0.150.nupkg
md5: 794c7dcfb45d5f2432b962ce2623bbb1  libsodium-uwp.1.0.150.symbols.nupkg
sha1: 4864b2863e8c58b7e5ca448c8a453c2fd7cec1aa  libsodium-uwp.1.0.150.symbols.nupkg
sha256: f918eb72988423d8fd1453e4917c5248080c1ed8f4a96eacd2ac388195677383  libsodium-uwp.1.0.150.symbols.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.13.2 Maintenance Release

27 Jul 13:43
1.0.13.2
Compare
Choose a tag to compare

1.0.13.2 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

What's New?

  • Fixes #22. Nuget packaging scheme changed with latest nuget.exe release, resulting in error: Payload contains two or more files with the same destination path 'Sodium.winmd. This has been resolved by moving Sodium.winmd to ref/uap10.0 instead of lib/uap10.0.
  • Fixes issue where build on ARM resulting in runtime error.
  • Minor maintenance fixes and improvements to implementation. Cleans up several compiler warnings.
  • Using sodium_memzero to remove temporary state variables created for GenericHash and PublicKeyAuth
  • Cleaning up project and compiler warnings
  • Project is now built against vs141 toolchain, and now requires Visual Studio 2017 to compile. Project should still work in Visual Studio 2015 projects.
  • Added dependency on Microsoft.NETCore.UniversalWindowsPlatform >= 5.3.3 in Nuget to fix other packaging issues

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

    <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: d1c72404d35c4c623c815244fd29f64  libsodium-uwp.1.0.132.nupkg
sha1: da472c287c699f51fc32c0021cbdd33f57cccbcd  libsodium-uwp.1.0.132.nupkg
sha256: 3268b7125a0c2512609696520d4d8bd6a0fdb315ffcd1e88bde936c1f42ed3bc  libsodium-uwp.1.0.132.nupkg
md5: 1506c95f82c9948a9f2a6fb6dd3efda3  libsodium-uwp.1.0.132.symbols.nupkg
sha1: 3d09cfeb8b8fc290ea066642d477cb7f3b32c34a  libsodium-uwp.1.0.132.symbols.nupkg
sha256: f10ded1ad4eb9b6fe45f796b01bc037c41d4833e81a72b7f502bdb2c9b6aa22b  libsodium-uwp.1.0.132.symbols.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.13.1 Release

19 Jul 18:08
1.0.13.1
Compare
Choose a tag to compare

1.0.13.1 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

AppVeyor is currently experiencing an outage preventing tests to pass. This package will be held in draft mode, and not pushed to Nuget until the tests pass.

What's New?

  • Bumped libsodium library to 1.0.13
  • Introduced PasswordHash::Argon2id for hashing with PasswordHash.
  • PasswordHash::HashArgon2i now accepts a third argument, algorithm. PasswordHash::Argon2i or PasswordHash::Argon2id. PasswordHash::Argon2i is the default arguement
public static String Sodium.PasswordHash.Hash(String password, PasswordHashOptions options, int algorithm)

Internally this method will use either crypto_pwhash_argon2i_str, or crypto_pwhash_argon2id_str, depending on the algorithm, instead of strictly relying on crypto_pwhash_str.

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

        <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: a92de79774c61f648b2af0ac1fc043db  libsodium-uwp.1.0.131.nupkg
md5: 2d4964d66a0902c2a81ed2640e2beeac  libsodium-uwp.1.0.131.symbols.nupkg
sha1: 4c3d6bbce420cd671c6b3bf2600ef4204818fb49  libsodium-uwp.1.0.131.nupkg
sha1: 95c26a2f031cf5c77bc6e19b3f14a881061bb8ff  libsodium-uwp.1.0.131.symbols.nupkg
sha256: c759e8df1cd4e92ea246eec6489c3ccff70cfd76797d91095854fa52267f494e  libsodium-uwp.1.0.131.nupkg
sha256: 36977ae37562fa88205418f5bd43418e8dc817aeba1bedc612b105eae5c98d37  libsodium-uwp.1.0.131.symbols.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.12.3 Release

08 Jun 18:54
1.0.12.3
Compare
Choose a tag to compare

1.0.12.3 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

Intermediate releases 1.0.12.1 through 1.0.12.2 have been skipped for development reasons.

What's New?

  • Fixed issue with PasswordHashOptions causing instability on x64 platforms. Use the PasswordHash.CreateOptions() API instead of new PasswordHashOptions { } to avoid compatibility issues.
var memory_cost = 1 << 8;
var time_cost = 3;
var options = PasswordHash.CreateOptions(memory_cost, time_cost); // => PasswordHashOptions
  • Memory locking and zeroing plain text passwords in KDF.Argon2i, KDF.Scrypt, PasswordHash.Hash, and PasswordHash.Verify.
  • Debug symbols built and pushed to SymbolSource
  • Nuget packages now published under the following format <libsodium_version><build_version>, and on Github <libsodium_version>.<build_version> Consequently 1.0.12.3 on Github is now published as 1.0.123 on Nuget.

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

        <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: 4ec27e73fbd7a55c00f9930b957a6d85  libsodium-uwp.1.0.123.nupkg
md5: 26a75478e68bf7ace1a905c4d22c2afb  libsodium-uwp.1.0.123.symbols.nupkg
sha1: 5bbe0e78e0f50a0880a6b95ffc3360b4b5dcdbef  libsodium-uwp.1.0.123.nupkg
sha1:: 9b9b24a825b7b8f83dd3f703ff65900cab2f895c  libsodium-uwp.1.0.123.symbols.nupkg
sha256: d4443a89c1cef4950a71516d8e4c3f863fbf59adceeb2f60d6d371628e72770c  libsodium-uwp.1.0.123.nupkg
sha256: acd381233873c3938c771ae053055bca70081f2daedb48a581746e332e4c9058  libsodium-uwp.1.0.123.symbols.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.12.0 Release

22 Mar 21:33
1.0.12.0
Compare
Choose a tag to compare

1.0.12.0 Release

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

What's New?

  • Updates libsodium dependency to 1.0.12 stable
  • Package on nuget is no longer -Pre

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp
    
  2. Add the following to your Package.appxmanifest file.

        <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: eab33d19ad5fb2197f396ff6837c9153  libsodium-uwp.1.0.12.nupkg:
sha1: 528c68d4528ca0e049b8fecc37b6f7d4ccb3e1dd  libsodium-uwp.1.0.12.nupkg
sha256: 2efbf1ff0eb0788ae721219d7ce25fd398f4bf8ba2d7aeb77221373ce0155d3e  libsodium-uwp.1.0.12.nupkg

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.0 Release Candidate 1

01 Nov 16:54
Compare
Choose a tag to compare
Pre-release

1.0.0 Release Candidate 1

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

What's New?

  • Minor bug fixes
  • Implementation of Argon2i and Scrypt hashing function and key derivation implementations

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp -Pre
    
  2. Add the following to your Package.appxmanifest file.

        <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmProvider" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.GenericHashAlgorithmNames" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PasswordHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>

Package Verification

The following hashes are made available so you can verify the authenticity of this package both on Github and Nuget.

md5: b123313abeb11b4a3b06ddbeb72391b6
sha1: 4f88b3e3296768a8de69f7dedd98560fbbe71a7a
sha:256 c0b7f97ecee2d8801f093cf0279976012a850b0c6651dc73a06cd4961fce5b90

The Nuget package is also signed so you can verify the authenticity of this package.

1.0.0-alpha6

27 Oct 18:54
Compare
Choose a tag to compare
1.0.0-alpha6 Pre-release
Pre-release

1.0.0-alpha6

libsodium-uwp is a Universal Windows Runtime Component that exposes the libsodium library to both desktop and mobile universal windows applications.

1.0.0-alpha6 introduces several new features to achieve API compatibility with libsodium-net. Alpha builds are provided as release previews, and are available on Nuget for testing.

What's New?

  • Minor bug fixes
  • Bumping release version from 0.1.0-alpha6 to 1.0.0-alpha6
  • Fixes Nuget packaging bug
  • Implementation of the following libsodium/libsodium-net methods:
    • Short Hash
    • CryptoHash.Hash
    • HMAC-SHA-2
    • One Time Authentication
    • Salsa20/XSalsa20/ChaCha20 Stream Ciphers
    • Detached Public Key Signatures
    • Detached Public Key Boxes
    • Detached Secret Key Boxes
    • HSalsa20 intermediate key derivation

Installation

  1. Install from Nuget

    Install-Package libsodium-uwp -Pre
    
  2. Add the following to your Package.appxmanifest file.

    <Extensions>
        <Extension Category="windows.activatableClass.inProcessServer">
            <InProcessServer>
                <Path>libsodium-uwp.dll</Path>
                <ActivatableClass ActivatableClassId="Sodium.Core" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.CryptoHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KDF" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.KeyPair" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.OneTimeAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.PublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ScalarMult" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SealedPublicKeyBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretBox" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretKeyAuth" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.SecretAead" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.ShortHash" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.StreamEncryption" ThreadingModel="both" />
                <ActivatableClass ActivatableClassId="Sodium.Utilities" ThreadingModel="both" />
            </InProcessServer>
        </Extension>
    </Extensions>