Commit 61b2c221 authored by Josh Ji's avatar Josh Ji

add MySQL connection, put data into MySQL DB, add some debug commands

parent 45a803e0
No preview for this file type
......@@ -11,6 +11,7 @@
<ItemGroup>
<PackageReference Include="Dahomey.Cbor" Version="1.17.0" />
<PackageReference Include="Jsbeautifier" Version="0.0.1" />
<PackageReference Include="MySql.Data" Version="8.0.29" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
<PackageReference Include="PCSC" Version="6.0.0" />
<PackageReference Include="PCSC.Iso7816" Version="6.0.0" />
......
......@@ -43,6 +43,10 @@
this.tabPage1 = new System.Windows.Forms.TabPage();
this.tabPage2 = new System.Windows.Forms.TabPage();
this.paramBox = new System.Windows.Forms.TextBox();
this.resetCredentials = new System.Windows.Forms.Button();
this.getCredentialCount = new System.Windows.Forms.Button();
this.getFreeSpace = new System.Windows.Forms.Button();
this.IDxBox = new System.Windows.Forms.TextBox();
this.tabControl1.SuspendLayout();
this.tabPage1.SuspendLayout();
this.tabPage2.SuspendLayout();
......@@ -110,7 +114,7 @@
//
// getPuKxRx
//
this.getPuKxRx.Location = new System.Drawing.Point(832, 203);
this.getPuKxRx.Location = new System.Drawing.Point(832, 290);
this.getPuKxRx.Name = "getPuKxRx";
this.getPuKxRx.Size = new System.Drawing.Size(119, 23);
this.getPuKxRx.TabIndex = 7;
......@@ -130,7 +134,7 @@
//
// dumpIDSecret
//
this.dumpIDSecret.Location = new System.Drawing.Point(832, 174);
this.dumpIDSecret.Location = new System.Drawing.Point(832, 261);
this.dumpIDSecret.Name = "dumpIDSecret";
this.dumpIDSecret.Size = new System.Drawing.Size(119, 23);
this.dumpIDSecret.TabIndex = 9;
......@@ -140,7 +144,7 @@
//
// getCx
//
this.getCx.Location = new System.Drawing.Point(832, 232);
this.getCx.Location = new System.Drawing.Point(832, 319);
this.getCx.Name = "getCx";
this.getCx.Size = new System.Drawing.Size(119, 23);
this.getCx.TabIndex = 10;
......@@ -150,7 +154,7 @@
//
// getPuKxCx
//
this.getPuKxCx.Location = new System.Drawing.Point(832, 261);
this.getPuKxCx.Location = new System.Drawing.Point(832, 377);
this.getPuKxCx.Name = "getPuKxCx";
this.getPuKxCx.Size = new System.Drawing.Size(119, 23);
this.getPuKxCx.TabIndex = 11;
......@@ -201,11 +205,53 @@
this.paramBox.TabIndex = 3;
this.paramBox.WordWrap = false;
//
// resetCredentials
//
this.resetCredentials.Location = new System.Drawing.Point(832, 232);
this.resetCredentials.Name = "resetCredentials";
this.resetCredentials.Size = new System.Drawing.Size(119, 23);
this.resetCredentials.TabIndex = 13;
this.resetCredentials.Text = "resetCredentials";
this.resetCredentials.UseVisualStyleBackColor = true;
this.resetCredentials.Click += new System.EventHandler(this.resetCredentials_Click);
//
// getCredentialCount
//
this.getCredentialCount.Location = new System.Drawing.Point(832, 203);
this.getCredentialCount.Name = "getCredentialCount";
this.getCredentialCount.Size = new System.Drawing.Size(134, 23);
this.getCredentialCount.TabIndex = 14;
this.getCredentialCount.Text = "getCredentialCount";
this.getCredentialCount.UseVisualStyleBackColor = true;
this.getCredentialCount.Click += new System.EventHandler(this.getCredentialCount_Click);
//
// getFreeSpace
//
this.getFreeSpace.Location = new System.Drawing.Point(832, 174);
this.getFreeSpace.Name = "getFreeSpace";
this.getFreeSpace.Size = new System.Drawing.Size(119, 23);
this.getFreeSpace.TabIndex = 15;
this.getFreeSpace.Text = "getFreeSpace";
this.getFreeSpace.UseVisualStyleBackColor = true;
this.getFreeSpace.Click += new System.EventHandler(this.getFreeSpace_Click);
//
// IDxBox
//
this.IDxBox.Location = new System.Drawing.Point(832, 348);
this.IDxBox.Name = "IDxBox";
this.IDxBox.PlaceholderText = "IDx";
this.IDxBox.Size = new System.Drawing.Size(119, 23);
this.IDxBox.TabIndex = 16;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1008, 729);
this.Controls.Add(this.IDxBox);
this.Controls.Add(this.getFreeSpace);
this.Controls.Add(this.getCredentialCount);
this.Controls.Add(this.resetCredentials);
this.Controls.Add(this.tabControl1);
this.Controls.Add(this.getPuKxCx);
this.Controls.Add(this.getCx);
......@@ -246,5 +292,9 @@
private TabPage tabPage1;
private TabPage tabPage2;
private TextBox paramBox;
private Button resetCredentials;
private Button getCredentialCount;
private Button getFreeSpace;
private TextBox IDxBox;
}
}
\ No newline at end of file
......@@ -7,6 +7,9 @@ using Jsbeautifier;
using Simulation;
using System.Security.Cryptography;
using System.Formats.Cbor;
using MySql.Data.MySqlClient;
using System.Data;
using System.Text;
namespace FidoReader
{
......@@ -155,9 +158,25 @@ namespace FidoReader
private void getPuKxCx_Click(object sender, EventArgs e) {
if (IDxBox.Text == "") {
MessageBox.Show("IDx not set");
return;
}
string connectString = "server=127.0.0.1;port=3306;user id=IDP;password=idppasswd;database=idp;charset=utf8;";
MySqlConnection mySqlConnection = new MySqlConnection(connectString);
if (mySqlConnection.State != ConnectionState.Open) {
try {
mySqlConnection.Open();
} catch (Exception ex) {
MessageBox.Show(ex.Message);
Debug.WriteLine(ex.Message);
return;
}
}
selectFIDOApplet_Click(sender, e);
string IDx = "PRLab";
string IDx = IDxBox.Text;
ECDiffieHellmanCng ECDH = new ECDiffieHellmanCng();
ECDH.HashAlgorithm = CngAlgorithm.Sha1;
......@@ -170,7 +189,6 @@ namespace FidoReader
Debug.WriteLine(BitConverter.ToString(publicKey));
Debug.WriteLine(BitConverter.ToString(privateKey));
Debug.WriteLine(BitConverter.ToString(ECDH.ExportPkcs8PrivateKey()));
CborWriter cborWriter = new CborWriter();
cborWriter.WriteStartArray(2);
......@@ -198,6 +216,7 @@ namespace FidoReader
}
CborReader cborReader = new CborReader(data);
cborReader.ReadStartArray();
// magic||length(in little endian)
byte[] keyHeader = new byte[]{ 0x45,0x43,0x4B,0x31,0x20,0x00,0x00,0x00};
byte[] temp = cborReader.ReadByteString();
byte[] PuKx = new byte[keyHeader.Length + temp.Length-1];
......@@ -211,26 +230,61 @@ namespace FidoReader
byte[] eccFullpublicblob = cngKey.Export(CngKeyBlobFormat.EccPublicBlob);
paramBox.Text += "PuKx : " + BitConverter.ToString(eccFullpublicblob) + "\r\n";
// generate sharedSecrect
byte[] sharedSecrect = ECDH.DeriveKeyMaterial(cngKey);
paramBox.Text += "SharedSecret : " + BitConverter.ToString(sharedSecrect) + "\r\n";
// generate hashedSharedsecrect
SHA256 sha256 = SHA256.Create();
byte[] hashedSharedSecrect = sha256.ComputeHash(sharedSecrect);
paramBox.Text += "sha256 SharedSecret : " + BitConverter.ToString(hashedSharedSecrect) + "\r\n";
// make AES cipher
byte[] IV = new byte[16];
Array.Fill(IV, (byte)0);
AesCng aes = new AesCng();
aes.KeySize = 256;
aes.Key = hashedSharedSecrect;
aes.BlockSize = 128;
aes.Mode = CipherMode.CBC;
aes.Padding = PaddingMode.None;
aes.IV = IV;
aes.Key = hashedSharedSecrect;
// decrypt cx
byte[] decryptedCx = aes.DecryptCbc(encryptedCx, IV, PaddingMode.None);
paramBox.Text += "Encrypted Cx : " + BitConverter.ToString(encryptedCx) + "\r\n";
paramBox.Text += "Decrypted Cx : " + BitConverter.ToString(decryptedCx) + "\r\n";
// generate HMAC <- AES(hashedSharedSecrect, sha256(IDx||Cx))
byte[] IDxAndCx = new byte[IDx.Length + decryptedCx.Length];
Array.Copy(Encoding.ASCII.GetBytes(IDx), 0, IDxAndCx, 0, IDx.Length);
Array.Copy(decryptedCx, 0, IDxAndCx, IDx.Length, decryptedCx.Length);
Debug.WriteLine(BitConverter.ToString(IDxAndCx));
byte[] hashedIDxAndCx = sha256.ComputeHash(IDxAndCx);
paramBox.Text += "hashedIDxAndCx : " + BitConverter.ToString(hashedIDxAndCx) + "\r\n";
byte[] hmac = aes.EncryptCbc(hashedIDxAndCx, IV, PaddingMode.None);
paramBox.Text += "hmac : " + BitConverter.ToString(hmac) + "\r\n";
try {
MySqlCommand insertNewIdentity = new MySqlCommand();
insertNewIdentity.Connection = mySqlConnection;
insertNewIdentity.CommandText = "INSERT INTO identities VALUES(default, @idx, @hmac, @cx, @hashedSharedSecrect, @pukx, @pukp, @prkp )";
insertNewIdentity.CommandType = CommandType.Text;
insertNewIdentity.Parameters.Add("@idx", MySqlDbType.VarChar).Value = IDxBox.Text;
insertNewIdentity.Parameters.Add("@hmac", MySqlDbType.VarBinary).Value = hmac;
insertNewIdentity.Parameters.Add("@cx", MySqlDbType.VarBinary).Value = decryptedCx;
insertNewIdentity.Parameters.Add("@hashedSharedSecrect", MySqlDbType.VarBinary).Value = hashedSharedSecrect;
insertNewIdentity.Parameters.Add("@pukx", MySqlDbType.VarBinary).Value = PuKx;
insertNewIdentity.Parameters.Add("@pukp", MySqlDbType.VarBinary).Value = publicKey;
insertNewIdentity.Parameters.Add("@prkp", MySqlDbType.VarBinary).Value = privateKey;
int rowAffected = insertNewIdentity.ExecuteNonQuery();
MessageBox.Show("row affected : "+rowAffected);
} catch (Exception ex) {
Debug.WriteLine(ex.ToString());
} finally {
if (mySqlConnection.State != ConnectionState.Closed)
mySqlConnection.Close();
}
}
protected override void OnFormClosing(FormClosingEventArgs e) {
......@@ -239,5 +293,36 @@ namespace FidoReader
pcscContext.Dispose();
pcscReader.Dispose();
}
private void getFreeSpace_Click(object sender, EventArgs e) {
var getFreeSpaceCommand = new CommandApdu(IsoCase.Case2Short, pcscReader.ActiveProtocol) {
CLA = 0x80,
INS = 0xCA,
P1P2 = 0xFF21
};
executecCommand(getFreeSpaceCommand);
}
private void getCredentialCount_Click(object sender, EventArgs e) {
selectFIDOApplet_Click(sender, e);
var command = new CommandApdu(IsoCase.Case4Short, pcscReader.ActiveProtocol) {
CLA = 0x80,
INS = 0x10,
P1P2 = 0x0000,
Data = new byte[] {0x45}
};
executecCommand(command);
}
private void resetCredentials_Click(object sender, EventArgs e) {
selectFIDOApplet_Click(sender, e);
var command = new CommandApdu(IsoCase.Case4Short, pcscReader.ActiveProtocol) {
CLA = 0x80,
INS = 0x10,
P1P2 = 0x0000,
Data = new byte[] { 0x07 }
};
executecCommand(command);
}
}
}
\ No newline at end of file
......@@ -10,6 +10,7 @@
"dependencies": {
"Dahomey.Cbor": "1.17.0",
"Jsbeautifier": "0.0.1",
"MySql.Data": "8.0.29",
"Newtonsoft.Json": "13.0.1",
"PCSC": "6.0.0",
"PCSC.Iso7816": "6.0.0",
......@@ -22,6 +23,14 @@
"FidoReader.dll": {}
}
},
"BouncyCastle.NetCore/1.8.5": {
"runtime": {
"lib/netstandard2.0/BouncyCastle.Crypto.dll": {
"assemblyVersion": "1.8.5.0",
"fileVersion": "1.8.19031.1"
}
}
},
"Dahomey.Cbor/1.17.0": {
"dependencies": {
"System.IO.Pipelines": "6.0.1"
......@@ -52,6 +61,14 @@
}
}
},
"Google.Protobuf/3.19.4": {
"runtime": {
"lib/net5.0/Google.Protobuf.dll": {
"assemblyVersion": "3.19.4.0",
"fileVersion": "3.19.4.0"
}
}
},
"Jsbeautifier/0.0.1": {
"runtime": {
"lib/netstandard2.0/Jsbeautifier.dll": {
......@@ -60,6 +77,40 @@
}
}
},
"K4os.Compression.LZ4/1.2.6": {
"dependencies": {
"System.Memory": "4.5.4"
},
"runtime": {
"lib/netstandard2.0/K4os.Compression.LZ4.dll": {
"assemblyVersion": "1.2.6.0",
"fileVersion": "1.2.6.0"
}
}
},
"K4os.Compression.LZ4.Streams/1.2.6": {
"dependencies": {
"K4os.Compression.LZ4": "1.2.6",
"K4os.Hash.xxHash": "1.0.6"
},
"runtime": {
"lib/netstandard2.1/K4os.Compression.LZ4.Streams.dll": {
"assemblyVersion": "1.2.6.0",
"fileVersion": "1.2.6.0"
}
}
},
"K4os.Hash.xxHash/1.0.6": {
"dependencies": {
"System.Memory": "4.5.4"
},
"runtime": {
"lib/netstandard2.0/K4os.Hash.xxHash.dll": {
"assemblyVersion": "1.0.6.0",
"fileVersion": "1.0.6.0"
}
}
},
"Microsoft.CSharp/4.7.0": {},
"Microsoft.NETCore.Platforms/3.1.0": {},
"Microsoft.Win32.Registry/4.7.0": {
......@@ -73,6 +124,32 @@
"Microsoft.NETCore.Platforms": "3.1.0"
}
},
"MySql.Data/8.0.29": {
"dependencies": {
"BouncyCastle.NetCore": "1.8.5",
"Google.Protobuf": "3.19.4",
"K4os.Compression.LZ4.Streams": "1.2.6",
"System.Buffers": "4.5.1",
"System.Configuration.ConfigurationManager": "4.7.0",
"System.Runtime.CompilerServices.Unsafe": "5.0.0",
"System.Security.Permissions": "4.7.0",
"System.Text.Encoding.CodePages": "4.4.0"
},
"runtime": {
"lib/net6.0/MySql.Data.dll": {
"assemblyVersion": "8.0.29.0",
"fileVersion": "8.0.29.0"
},
"lib/net6.0/Ubiety.Dns.Core.dll": {
"assemblyVersion": "2.2.1.0",
"fileVersion": "2.2.1.0"
},
"lib/net6.0/ZstdNet.dll": {
"assemblyVersion": "1.4.5.0",
"fileVersion": "1.4.5.0"
}
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
......@@ -176,6 +253,7 @@
}
}
},
"System.Buffers/4.5.1": {},
"System.CodeDom/4.7.0": {},
"System.ComponentModel.Annotations/4.7.0": {},
"System.Configuration.ConfigurationManager/4.7.0": {
......@@ -255,6 +333,7 @@
}
}
},
"System.Memory/4.5.4": {},
"System.Reactive/5.0.0": {
"runtime": {
"lib/net5.0/System.Reactive.dll": {
......@@ -263,6 +342,7 @@
}
}
},
"System.Runtime.CompilerServices.Unsafe/5.0.0": {},
"System.Security.AccessControl/4.7.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "3.1.0",
......@@ -277,6 +357,11 @@
}
},
"System.Security.Principal.Windows/4.7.0": {},
"System.Text.Encoding.CodePages/4.4.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "3.1.0"
}
},
"System.Windows.Extensions/4.7.0": {
"dependencies": {
"System.Drawing.Common": "4.7.0"
......@@ -295,6 +380,13 @@
"serviceable": false,
"sha512": ""
},
"BouncyCastle.NetCore/1.8.5": {
"type": "package",
"serviceable": true,
"sha512": "sha512-6uxsQw2UXrt82VQAWC2td3oBSJjUZ3P4u4DliagB8wf67KsU53V8sW9xwdF+IwZOOZFR0TCZuv/YKZ2BlrfAag==",
"path": "bouncycastle.netcore/1.8.5",
"hashPath": "bouncycastle.netcore.1.8.5.nupkg.sha512"
},
"Dahomey.Cbor/1.17.0": {
"type": "package",
"serviceable": true,
......@@ -309,6 +401,13 @@
"path": "entityframework/6.4.4",
"hashPath": "entityframework.6.4.4.nupkg.sha512"
},
"Google.Protobuf/3.19.4": {
"type": "package",
"serviceable": true,
"sha512": "sha512-fd07/ykL4O4FhqrZIELm5lmiyOHfdPg9+o+hWr6tcfRdS7tHXnImg/2wtogLzlW2eEmr0J7j6ZrZvaWOLiJbxQ==",
"path": "google.protobuf/3.19.4",
"hashPath": "google.protobuf.3.19.4.nupkg.sha512"
},
"Jsbeautifier/0.0.1": {
"type": "package",
"serviceable": true,
......@@ -316,6 +415,27 @@
"path": "jsbeautifier/0.0.1",
"hashPath": "jsbeautifier.0.0.1.nupkg.sha512"
},
"K4os.Compression.LZ4/1.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-4EN8EE6bZG2U8dFfeqn+Om3UNajK3cPYHvyQROCFm4jNFVLuRB7Nl5bDkjBSAjfctS6konm+ay3u5RafBzltDA==",
"path": "k4os.compression.lz4/1.2.6",
"hashPath": "k4os.compression.lz4.1.2.6.nupkg.sha512"
},
"K4os.Compression.LZ4.Streams/1.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-5KMcNFRHeRrnJ9c8k5fZcfAJJEY0FndMiDiHIYa35Mx5KCMkeSNo/PEXu7YmtCoVczJagx+Vt7J/F+//S1PcJQ==",
"path": "k4os.compression.lz4.streams/1.2.6",
"hashPath": "k4os.compression.lz4.streams.1.2.6.nupkg.sha512"
},
"K4os.Hash.xxHash/1.0.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-jCfNP0inx1sGcP3KSbpiDEH3km2e1sVBjMfKo+V92jr1dL4ZYgA1uhRMl1wAtdGZcbObXIikKqtVlgx3j/CW6g==",
"path": "k4os.hash.xxhash/1.0.6",
"hashPath": "k4os.hash.xxhash.1.0.6.nupkg.sha512"
},
"Microsoft.CSharp/4.7.0": {
"type": "package",
"serviceable": true,
......@@ -344,6 +464,13 @@
"path": "microsoft.win32.systemevents/4.7.0",
"hashPath": "microsoft.win32.systemevents.4.7.0.nupkg.sha512"
},
"MySql.Data/8.0.29": {
"type": "package",
"serviceable": true,
"sha512": "sha512-3I+QUbSDTknNVAWUEr8JEtXU5sk83kofwy79TROew9YMhVQAq39jZwpHQfFNG757JZFGWJ5oa5VA3tZBxJa1jw==",
"path": "mysql.data/8.0.29",
"hashPath": "mysql.data.8.0.29.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
......@@ -407,6 +534,13 @@
"path": "stub.system.data.sqlite.core.netstandard/1.0.115.5",
"hashPath": "stub.system.data.sqlite.core.netstandard.1.0.115.5.nupkg.sha512"
},
"System.Buffers/4.5.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==",
"path": "system.buffers/4.5.1",
"hashPath": "system.buffers.4.5.1.nupkg.sha512"
},
"System.CodeDom/4.7.0": {
"type": "package",
"serviceable": true,
......@@ -477,6 +611,13 @@
"path": "system.io.pipelines/6.0.1",
"hashPath": "system.io.pipelines.6.0.1.nupkg.sha512"
},
"System.Memory/4.5.4": {
"type": "package",
"serviceable": true,
"sha512": "sha512-1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==",
"path": "system.memory/4.5.4",
"hashPath": "system.memory.4.5.4.nupkg.sha512"
},
"System.Reactive/5.0.0": {
"type": "package",
"serviceable": true,
......@@ -484,6 +625,13 @@
"path": "system.reactive/5.0.0",
"hashPath": "system.reactive.5.0.0.nupkg.sha512"
},
"System.Runtime.CompilerServices.Unsafe/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ZD9TMpsmYJLrxbbmdvhwt9YEgG5WntEnZ/d1eH8JBX9LBp+Ju8BSBhUGbZMNVHHomWo2KVImJhTDl2hIgw/6MA==",
"path": "system.runtime.compilerservices.unsafe/5.0.0",
"hashPath": "system.runtime.compilerservices.unsafe.5.0.0.nupkg.sha512"
},
"System.Security.AccessControl/4.7.0": {
"type": "package",
"serviceable": true,
......@@ -512,6 +660,13 @@
"path": "system.security.principal.windows/4.7.0",
"hashPath": "system.security.principal.windows.4.7.0.nupkg.sha512"
},
"System.Text.Encoding.CodePages/4.4.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-6JX7ZdaceBiLKLkYt8zJcp4xTJd1uYyXXEkPw6mnlUIjh1gZPIVKPtRXPmY5kLf6DwZmf5YLwR3QUrRonl7l0A==",
"path": "system.text.encoding.codepages/4.4.0",
"hashPath": "system.text.encoding.codepages.4.4.0.nupkg.sha512"
},
"System.Windows.Extensions/4.7.0": {
"type": "package",
"serviceable": true,
......
18e09d835bc658f59f67d1f02462a35a71b56e78
e415487a358ca4b07c65676047fc477a837a2904
......@@ -85,3 +85,11 @@ C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\obj\Debug\n
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\obj\Debug\net6.0-windows\FidoReader.pdb
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\obj\Debug\net6.0-windows\FidoReader.genruntimeconfig.cache
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\obj\Debug\net6.0-windows\ref\FidoReader.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\BouncyCastle.Crypto.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\Google.Protobuf.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\K4os.Compression.LZ4.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\K4os.Compression.LZ4.Streams.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\K4os.Hash.xxHash.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\MySql.Data.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\Ubiety.Dns.Core.dll
C:\Users\josh2\Documents\TWISC\forward privacy\FidoReader\FidoReader\bin\Debug\net6.0-windows\ZstdNet.dll
......@@ -6,6 +6,14 @@
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v6.0": {
"BouncyCastle.NetCore/1.8.5": {
"runtime": {
"lib/netstandard2.0/BouncyCastle.Crypto.dll": {
"assemblyVersion": "1.8.5.0",
"fileVersion": "1.8.19031.1"
}
}
},
"Dahomey.Cbor/1.17.0": {
"dependencies": {
"System.IO.Pipelines": "6.0.1"
......@@ -36,6 +44,14 @@
}
}
},
"Google.Protobuf/3.19.4": {
"runtime": {
"lib/net5.0/Google.Protobuf.dll": {
"assemblyVersion": "3.19.4.0",
"fileVersion": "3.19.4.0"
}
}
},
"Jsbeautifier/0.0.1": {
"runtime": {
"lib/netstandard2.0/Jsbeautifier.dll": {
......@@ -44,6 +60,40 @@
}
}
},
"K4os.Compression.LZ4/1.2.6": {
"dependencies": {
"System.Memory": "4.5.4"
},
"runtime": {
"lib/netstandard2.0/K4os.Compression.LZ4.dll": {
"assemblyVersion": "1.2.6.0",
"fileVersion": "1.2.6.0"
}
}
},
"K4os.Compression.LZ4.Streams/1.2.6": {
"dependencies": {
"K4os.Compression.LZ4": "1.2.6",
"K4os.Hash.xxHash": "1.0.6"
},
"runtime": {
"lib/netstandard2.1/K4os.Compression.LZ4.Streams.dll": {
"assemblyVersion": "1.2.6.0",
"fileVersion": "1.2.6.0"
}
}
},
"K4os.Hash.xxHash/1.0.6": {
"dependencies": {
"System.Memory": "4.5.4"
},
"runtime": {
"lib/netstandard2.0/K4os.Hash.xxHash.dll": {
"assemblyVersion": "1.0.6.0",
"fileVersion": "1.0.6.0"
}
}
},
"Microsoft.CSharp/4.7.0": {},
"Microsoft.NETCore.Platforms/3.1.0": {},
"Microsoft.Win32.Registry/4.7.0": {
......@@ -91,6 +141,32 @@
}
}
},
"MySql.Data/8.0.29": {
"dependencies": {
"BouncyCastle.NetCore": "1.8.5",
"Google.Protobuf": "3.19.4",
"K4os.Compression.LZ4.Streams": "1.2.6",
"System.Buffers": "4.5.1",
"System.Configuration.ConfigurationManager": "4.7.0",
"System.Runtime.CompilerServices.Unsafe": "5.0.0",
"System.Security.Permissions": "4.7.0",
"System.Text.Encoding.CodePages": "4.4.0"
},
"runtime": {
"lib/net6.0/MySql.Data.dll": {
"assemblyVersion": "8.0.29.0",
"fileVersion": "8.0.29.0"
},
"lib/net6.0/Ubiety.Dns.Core.dll": {
"assemblyVersion": "2.2.1.0",
"fileVersion": "2.2.1.0"
},
"lib/net6.0/ZstdNet.dll": {
"assemblyVersion": "1.4.5.0",
"fileVersion": "1.4.5.0"
}
}
},
"Newtonsoft.Json/13.0.1": {
"runtime": {
"lib/netstandard2.0/Newtonsoft.Json.dll": {
......@@ -194,6 +270,7 @@
}
}
},
"System.Buffers/4.5.1": {},
"System.CodeDom/4.7.0": {
"runtime": {
"lib/netstandard2.0/System.CodeDom.dll": {
......@@ -313,6 +390,7 @@
}
}
},
"System.Memory/4.5.4": {},
"System.Reactive/5.0.0": {
"runtime": {
"lib/net5.0/System.Reactive.dll": {
......@@ -321,6 +399,14 @@
}
}
},
"System.Runtime.CompilerServices.Unsafe/5.0.0": {
"runtime": {
"lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.dll": {
"assemblyVersion": "5.0.0.0",
"fileVersion": "5.0.20.51904"
}
}
},
"System.Security.AccessControl/4.7.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "3.1.0",
......@@ -391,6 +477,25 @@
}
}
},
"System.Text.Encoding.CodePages/4.4.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "3.1.0"
},
"runtime": {
"lib/netstandard2.0/System.Text.Encoding.CodePages.dll": {
"assemblyVersion": "4.1.0.0",
"fileVersion": "4.6.25519.3"
}
},
"runtimeTargets": {
"runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": {
"rid": "win",
"assetType": "runtime",
"assemblyVersion": "4.1.0.0",
"fileVersion": "4.6.25519.3"
}
}
},
"System.Windows.Extensions/4.7.0": {
"dependencies": {
"System.Drawing.Common": "4.7.0"
......@@ -413,6 +518,13 @@
}
},
"libraries": {
"BouncyCastle.NetCore/1.8.5": {
"type": "package",
"serviceable": true,
"sha512": "sha512-6uxsQw2UXrt82VQAWC2td3oBSJjUZ3P4u4DliagB8wf67KsU53V8sW9xwdF+IwZOOZFR0TCZuv/YKZ2BlrfAag==",
"path": "bouncycastle.netcore/1.8.5",
"hashPath": "bouncycastle.netcore.1.8.5.nupkg.sha512"
},
"Dahomey.Cbor/1.17.0": {
"type": "package",
"serviceable": true,
......@@ -427,6 +539,13 @@
"path": "entityframework/6.4.4",
"hashPath": "entityframework.6.4.4.nupkg.sha512"
},
"Google.Protobuf/3.19.4": {
"type": "package",
"serviceable": true,
"sha512": "sha512-fd07/ykL4O4FhqrZIELm5lmiyOHfdPg9+o+hWr6tcfRdS7tHXnImg/2wtogLzlW2eEmr0J7j6ZrZvaWOLiJbxQ==",
"path": "google.protobuf/3.19.4",
"hashPath": "google.protobuf.3.19.4.nupkg.sha512"
},
"Jsbeautifier/0.0.1": {
"type": "package",
"serviceable": true,
......@@ -434,6 +553,27 @@
"path": "jsbeautifier/0.0.1",
"hashPath": "jsbeautifier.0.0.1.nupkg.sha512"
},
"K4os.Compression.LZ4/1.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-4EN8EE6bZG2U8dFfeqn+Om3UNajK3cPYHvyQROCFm4jNFVLuRB7Nl5bDkjBSAjfctS6konm+ay3u5RafBzltDA==",
"path": "k4os.compression.lz4/1.2.6",
"hashPath": "k4os.compression.lz4.1.2.6.nupkg.sha512"
},
"K4os.Compression.LZ4.Streams/1.2.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-5KMcNFRHeRrnJ9c8k5fZcfAJJEY0FndMiDiHIYa35Mx5KCMkeSNo/PEXu7YmtCoVczJagx+Vt7J/F+//S1PcJQ==",
"path": "k4os.compression.lz4.streams/1.2.6",
"hashPath": "k4os.compression.lz4.streams.1.2.6.nupkg.sha512"
},
"K4os.Hash.xxHash/1.0.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-jCfNP0inx1sGcP3KSbpiDEH3km2e1sVBjMfKo+V92jr1dL4ZYgA1uhRMl1wAtdGZcbObXIikKqtVlgx3j/CW6g==",
"path": "k4os.hash.xxhash/1.0.6",
"hashPath": "k4os.hash.xxhash.1.0.6.nupkg.sha512"
},
"Microsoft.CSharp/4.7.0": {
"type": "package",
"serviceable": true,
......@@ -462,6 +602,13 @@
"path": "microsoft.win32.systemevents/4.7.0",
"hashPath": "microsoft.win32.systemevents.4.7.0.nupkg.sha512"
},
"MySql.Data/8.0.29": {
"type": "package",
"serviceable": true,
"sha512": "sha512-3I+QUbSDTknNVAWUEr8JEtXU5sk83kofwy79TROew9YMhVQAq39jZwpHQfFNG757JZFGWJ5oa5VA3tZBxJa1jw==",
"path": "mysql.data/8.0.29",
"hashPath": "mysql.data.8.0.29.nupkg.sha512"
},
"Newtonsoft.Json/13.0.1": {
"type": "package",
"serviceable": true,
......@@ -525,6 +672,13 @@
"path": "stub.system.data.sqlite.core.netstandard/1.0.115.5",
"hashPath": "stub.system.data.sqlite.core.netstandard.1.0.115.5.nupkg.sha512"
},
"System.Buffers/4.5.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==",
"path": "system.buffers/4.5.1",
"hashPath": "system.buffers.4.5.1.nupkg.sha512"
},
"System.CodeDom/4.7.0": {
"type": "package",
"serviceable": true,
......@@ -595,6 +749,13 @@
"path": "system.io.pipelines/6.0.1",
"hashPath": "system.io.pipelines.6.0.1.nupkg.sha512"
},
"System.Memory/4.5.4": {
"type": "package",
"serviceable": true,
"sha512": "sha512-1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==",
"path": "system.memory/4.5.4",
"hashPath": "system.memory.4.5.4.nupkg.sha512"
},
"System.Reactive/5.0.0": {
"type": "package",
"serviceable": true,
......@@ -602,6 +763,13 @@
"path": "system.reactive/5.0.0",
"hashPath": "system.reactive.5.0.0.nupkg.sha512"
},
"System.Runtime.CompilerServices.Unsafe/5.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-ZD9TMpsmYJLrxbbmdvhwt9YEgG5WntEnZ/d1eH8JBX9LBp+Ju8BSBhUGbZMNVHHomWo2KVImJhTDl2hIgw/6MA==",
"path": "system.runtime.compilerservices.unsafe/5.0.0",
"hashPath": "system.runtime.compilerservices.unsafe.5.0.0.nupkg.sha512"
},
"System.Security.AccessControl/4.7.0": {
"type": "package",
"serviceable": true,
......@@ -630,6 +798,13 @@
"path": "system.security.principal.windows/4.7.0",
"hashPath": "system.security.principal.windows.4.7.0.nupkg.sha512"
},
"System.Text.Encoding.CodePages/4.4.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-6JX7ZdaceBiLKLkYt8zJcp4xTJd1uYyXXEkPw6mnlUIjh1gZPIVKPtRXPmY5kLf6DwZmf5YLwR3QUrRonl7l0A==",
"path": "system.text.encoding.codepages/4.4.0",
"hashPath": "system.text.encoding.codepages.4.4.0.nupkg.sha512"
},
"System.Windows.Extensions/4.7.0": {
"type": "package",
"serviceable": true,
......
......@@ -52,6 +52,10 @@
"target": "Package",
"version": "[0.0.1, )"
},
"MySql.Data": {
"target": "Package",
"version": "[8.0.29, )"
},
"Newtonsoft.Json": {
"target": "Package",
"version": "[13.0.1, )"
......
This diff is collapsed.
{
"version": 2,
"dgSpecHash": "7JpFHVepHvGaaegnj0AjxVUU+aY4WtxHlYXNA1bexiRqXtK76h/yzDEqviVr74PwboJ6kp6KHaijAvQQj9soiQ==",
"dgSpecHash": "o30u0jePzkGYiSTL2zF91Wt2Ajl9yX83bAC+dQmvOY3N37XtOc4JXYgzDb4HZPIVIlo9lIYSbeQw01FGI9NmCw==",
"success": true,
"projectFilePath": "C:\\Users\\josh2\\Documents\\TWISC\\forward privacy\\FidoReader\\FidoReader\\FidoReader.csproj",
"expectedPackageFiles": [
"C:\\Users\\josh2\\.nuget\\packages\\bouncycastle.netcore\\1.8.5\\bouncycastle.netcore.1.8.5.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\dahomey.cbor\\1.17.0\\dahomey.cbor.1.17.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\entityframework\\6.4.4\\entityframework.6.4.4.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\google.protobuf\\3.19.4\\google.protobuf.3.19.4.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\jsbeautifier\\0.0.1\\jsbeautifier.0.0.1.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\k4os.compression.lz4\\1.2.6\\k4os.compression.lz4.1.2.6.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\k4os.compression.lz4.streams\\1.2.6\\k4os.compression.lz4.streams.1.2.6.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\k4os.hash.xxhash\\1.0.6\\k4os.hash.xxhash.1.0.6.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\microsoft.netcore.platforms\\3.1.0\\microsoft.netcore.platforms.3.1.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\microsoft.win32.registry\\4.7.0\\microsoft.win32.registry.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\microsoft.win32.systemevents\\4.7.0\\microsoft.win32.systemevents.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\mysql.data\\8.0.29\\mysql.data.8.0.29.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\newtonsoft.json\\13.0.1\\newtonsoft.json.13.0.1.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\pcsc\\6.0.0\\pcsc.6.0.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\pcsc.iso7816\\6.0.0\\pcsc.iso7816.6.0.0.nupkg.sha512",
......@@ -20,6 +26,7 @@
"C:\\Users\\josh2\\.nuget\\packages\\runtime.win-x64.runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.win-x64.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\runtime.win-x86.runtime.native.system.data.sqlclient.sni\\4.4.0\\runtime.win-x86.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\stub.system.data.sqlite.core.netstandard\\1.0.115.5\\stub.system.data.sqlite.core.netstandard.1.0.115.5.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.buffers\\4.5.1\\system.buffers.4.5.1.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.codedom\\4.7.0\\system.codedom.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.componentmodel.annotations\\4.7.0\\system.componentmodel.annotations.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.configuration.configurationmanager\\4.7.0\\system.configuration.configurationmanager.4.7.0.nupkg.sha512",
......@@ -30,11 +37,14 @@
"C:\\Users\\josh2\\.nuget\\packages\\system.drawing.common\\4.7.0\\system.drawing.common.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.formats.cbor\\6.0.0\\system.formats.cbor.6.0.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.io.pipelines\\6.0.1\\system.io.pipelines.6.0.1.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.memory\\4.5.4\\system.memory.4.5.4.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.reactive\\5.0.0\\system.reactive.5.0.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\5.0.0\\system.runtime.compilerservices.unsafe.5.0.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.security.accesscontrol\\4.7.0\\system.security.accesscontrol.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.security.cryptography.protecteddata\\4.7.0\\system.security.cryptography.protecteddata.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.security.permissions\\4.7.0\\system.security.permissions.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.security.principal.windows\\4.7.0\\system.security.principal.windows.4.7.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.text.encoding.codepages\\4.4.0\\system.text.encoding.codepages.4.4.0.nupkg.sha512",
"C:\\Users\\josh2\\.nuget\\packages\\system.windows.extensions\\4.7.0\\system.windows.extensions.4.7.0.nupkg.sha512"
],
"logs": []
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment