Rename Methods class to Libsodium

This commit is contained in:
Pieter-Jan Briers
2022-03-27 18:00:02 +02:00
parent 8643c10779
commit 2161e38118
4 changed files with 22 additions and 10 deletions

View File

@@ -9,7 +9,7 @@ generate-macro-bindings
unix-types
log-potential-typedef-remappings
--exclude
--exclude
randombytes_salsa20_implementation
CRYPTO_ALIGN
SODIUM_C99
@@ -92,4 +92,7 @@ libsodium
--remap
crypto_aead_aes256gcm_state_=crypto_aead_aes256gcm_state
crypto_auth_hmacsha512_state=crypto_auth_hmacsha512256_state
crypto_auth_hmacsha512_state=crypto_auth_hmacsha512256_state
--methodClassName
Libsodium

View File

@@ -3,7 +3,7 @@ using System.Runtime.InteropServices;
namespace SpaceWizards.Sodium.Interop
{
public static unsafe partial class Methods
public static unsafe partial class Libsodium
{
[DllImport("libsodium", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
public static extern int sodium_init();
@@ -2680,6 +2680,15 @@ namespace SpaceWizards.Sodium.Interop
[DllImport("libsodium", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
public static extern void crypto_stream_salsa20_keygen([NativeTypeName("unsigned char [32]")] byte* k);
[NativeTypeName("#define crypto_stream_salsa20_KEYBYTES 32U")]
public const uint crypto_stream_salsa20_KEYBYTES = 32U;
[NativeTypeName("#define crypto_stream_salsa20_NONCEBYTES 8U")]
public const uint crypto_stream_salsa20_NONCEBYTES = 8U;
[NativeTypeName("#define crypto_stream_salsa20_MESSAGEBYTES_MAX SODIUM_SIZE_MAX")]
public const ulong crypto_stream_salsa20_MESSAGEBYTES_MAX = ((0xffffffffffffffffUL) < (0xffffffffffffffffUL) ? (0xffffffffffffffffUL) : (0xffffffffffffffffUL));
[DllImport("libsodium", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
[return: NativeTypeName("size_t")]
public static extern nuint crypto_stream_salsa208_keybytes();

View File

@@ -14,11 +14,11 @@
</PropertyGroup>
<ItemGroup>
<Folder Include="Generated"/>
<Folder Include="Generated" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="libsodium" Version="1.0.18.1"/>
<PackageReference Include="libsodium" Version="1.0.18.1" />
</ItemGroup>
</Project>

View File

@@ -1,6 +1,6 @@
using System.Security.Cryptography;
using NUnit.Framework;
using static SpaceWizards.Sodium.Interop.Methods;
using static SpaceWizards.Sodium.Interop.Libsodium;
namespace SpaceWizards.Sodium.Tests;
@@ -12,10 +12,10 @@ public sealed class SecretBoxTest
{
var message = RandomNumberGenerator.GetBytes(1024);
var cipher = RandomNumberGenerator.GetBytes((int)(1024 + crypto_secretbox_MACBYTES));
var key = stackalloc byte[(int)crypto_secretbox_KEYBYTES];
var nonce = stackalloc byte[(int)crypto_secretbox_NONCEBYTES];
crypto_secretbox_keygen(key);
randombytes_buf(nonce, crypto_secretbox_NONCEBYTES);
fixed (byte* mPtr = message)
@@ -30,7 +30,7 @@ public sealed class SecretBoxTest
{
crypto_secretbox_open_easy(dPtr, cPtr, (ulong)cipher.Length, nonce, key);
}
Assert.That(decrypted, Is.EquivalentTo(message));
}
}
}