ModernKeePassLib namespace restoration

This commit is contained in:
2017-09-26 15:38:58 +02:00
parent 27aaa8023a
commit 1faa26473d
114 changed files with 785 additions and 747 deletions

View File

@@ -24,7 +24,7 @@ using System.IO;
using System.Diagnostics;
using System.Security;
namespace ModernKeePassLibPCL.Cryptography.Cipher
namespace ModernKeePassLib.Cryptography.Cipher
{
/// <summary>
/// Pool of encryption/decryption algorithms (ciphers).

View File

@@ -20,7 +20,7 @@
using System;
using System.IO;
namespace ModernKeePassLibPCL.Cryptography.Cipher
namespace ModernKeePassLib.Cryptography.Cipher
{
/// <summary>
/// Interface of an encryption/decryption class.

View File

@@ -22,9 +22,9 @@
using System;
using System.Diagnostics;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Utility;
namespace ModernKeePassLibPCL.Cryptography.Cipher
namespace ModernKeePassLib.Cryptography.Cipher
{
public sealed class Salsa20Cipher : IDisposable
{

View File

@@ -24,7 +24,7 @@ using System.IO;
using System.Security;
using System.Diagnostics;
using Windows.Storage.Streams;
#if ModernKeePassLibPCL
#if ModernKeePassLib
using Windows.Security.Cryptography;
using Windows.Security.Cryptography.Core;
#else
@@ -42,7 +42,7 @@ using Org.BouncyCastle.Crypto.Parameters;
#endif
using ModernKeePassLibPCL.Resources;
using ModernKeePassLib.Resources;
using Org.BouncyCastle.Crypto;
using Org.BouncyCastle.Crypto.Engines;
using Org.BouncyCastle.Crypto.IO;
@@ -50,14 +50,14 @@ using Org.BouncyCastle.Crypto.Modes;
using Org.BouncyCastle.Crypto.Paddings;
using Org.BouncyCastle.Crypto.Parameters;
namespace ModernKeePassLibPCL.Cryptography.Cipher
namespace ModernKeePassLib.Cryptography.Cipher
{
/// <summary>
/// Standard AES cipher implementation.
/// </summary>
public sealed class StandardAesEngine : ICipherEngine
{
#if !ModernKeePassLibPCL && !KeePassRT
#if !ModernKeePassLib && !KeePassRT
private const CipherMode m_rCipherMode = CipherMode.CBC;
private const PaddingMode m_rCipherPadding = PaddingMode.PKCS7;
#endif
@@ -129,8 +129,8 @@ namespace ModernKeePassLibPCL.Cryptography.Cipher
byte[] pbLocalKey = new byte[32];
Array.Copy(pbKey, pbLocalKey, 32);
#if !ModernKeePassLibPCL
//#if ModernKeePassLibPCL
#if !ModernKeePassLib
//#if ModernKeePassLib
/*var provider = WinRTCrypto.SymmetricKeyAlgorithmProvider.
OpenAlgorithm(SymmetricAlgorithm.AesCbcPkcs7);
var key = provider.CreateSymmetricKey(pbLocalKey);
@@ -173,7 +173,7 @@ namespace ModernKeePassLibPCL.Cryptography.Cipher
//#else
//#if !KeePassRT
//#if !ModernKeePassLibPCL
//#if !ModernKeePassLib
RijndaelManaged r = new RijndaelManaged();
if(r.BlockSize != 128) // AES block size
{

View File

@@ -19,7 +19,7 @@
using System;
using System.Security;
#if ModernKeePassLibPCL
#if ModernKeePassLib
using Windows.Security.Cryptography;
#else
using System.Security.Cryptography;
@@ -27,11 +27,11 @@ using System.Security.Cryptography;
using System.IO;
using System.Diagnostics;
using ModernKeePassLibPCL.Native;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Native;
using ModernKeePassLib.Utility;
using Windows.Security.Cryptography.Core;
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
/// <summary>
/// Cryptographically strong random number generator. The returned values
@@ -42,7 +42,7 @@ namespace ModernKeePassLibPCL.Cryptography
{
private byte[] m_pbEntropyPool = new byte[64];
private uint m_uCounter;
#if ModernKeePassLibPCL
#if ModernKeePassLib
//private IRandomNumberGenerator m_rng = NetFxCrypto.RandomNumberGenerator;
#else
private RNGCryptoServiceProvider m_rng = new RNGCryptoServiceProvider();
@@ -107,7 +107,7 @@ namespace ModernKeePassLibPCL.Cryptography
byte[] pbNewData = pbEntropy;
if(pbEntropy.Length >= 64)
{
#if ModernKeePassLibPCL
#if ModernKeePassLib
/*var shaNew = WinRTCrypto.HashAlgorithmProvider.OpenAlgorithm(HashAlgorithm.Sha512);
pbNewData = shaNew.HashData(pbEntropy);*/
var sha256 = HashAlgorithmProvider.OpenAlgorithm(HashAlgorithmNames.Sha256);
@@ -132,7 +132,7 @@ namespace ModernKeePassLibPCL.Cryptography
ms.Write(pbNewData, 0, pbNewData.Length);
byte[] pbFinal = ms.ToArray();
#if ModernKeePassLibPCL
#if ModernKeePassLib
/*var shaPool = WinRTCrypto.HashAlgorithmProvider.OpenAlgorithm(HashAlgorithm.Sha512);
m_pbEntropyPool = shaPool.HashData(pbFinal);*/
var sha256 = HashAlgorithmProvider.OpenAlgorithm(HashAlgorithmNames.Sha256);
@@ -164,7 +164,7 @@ namespace ModernKeePassLibPCL.Cryptography
pb = TimeUtil.PackTime(DateTime.Now);
ms.Write(pb, 0, pb.Length);
#if (!ModernKeePassLibPCL && !KeePassLibSD && !KeePassRT)
#if (!ModernKeePassLib && !KeePassLibSD && !KeePassRT)
// In try-catch for systems without GUI;
// https://sourceforge.net/p/keepass/discussion/329221/thread/20335b73/
try
@@ -181,7 +181,7 @@ namespace ModernKeePassLibPCL.Cryptography
pb = MemUtil.UInt32ToBytes((uint)rWeak.Next());
ms.Write(pb, 0, pb.Length);
#if ModernKeePassLibPCL
#if ModernKeePassLib
pb = MemUtil.UInt32ToBytes((uint)Environment.ProcessorCount);
ms.Write(pb, 0, pb.Length);
@@ -192,7 +192,7 @@ namespace ModernKeePassLibPCL.Cryptography
ms.Write(pb, 0, pb.Length);
#endif
#if (!ModernKeePassLibPCL && !KeePassLibSD && !KeePassRT)
#if (!ModernKeePassLib && !KeePassLibSD && !KeePassRT)
Process p = null;
try
{
@@ -287,7 +287,7 @@ namespace ModernKeePassLibPCL.Cryptography
m_uGeneratedBytesCount += 32;
}
#if ModernKeePassLibPCL
#if ModernKeePassLib
/*var sha256 = WinRTCrypto.HashAlgorithmProvider.OpenAlgorithm(HashAlgorithm.Sha256);
return sha256.HashData(pbFinal);*/
var sha256 = HashAlgorithmProvider.OpenAlgorithm(HashAlgorithmNames.Sha256);
@@ -322,7 +322,7 @@ namespace ModernKeePassLibPCL.Cryptography
long lCopy = (long)((uRequestedBytes < 32) ? uRequestedBytes : 32);
#if (!ModernKeePassLibPCL && !KeePassLibSD && !KeePassRT)
#if (!ModernKeePassLib && !KeePassLibSD && !KeePassRT)
Array.Copy(pbRandom256, 0, pbRes, lPos, lCopy);
#else
Array.Copy(pbRandom256, 0, pbRes, (int)lPos, (int)lCopy);

View File

@@ -20,15 +20,15 @@
using System;
using System.Diagnostics;
using Windows.Security.Cryptography.Core;
#if ModernKeePassLibPCL
#if ModernKeePassLib
using Windows.Security.Cryptography;
#else
using System.Security.Cryptography;
#endif
using ModernKeePassLibPCL.Cryptography.Cipher;
using ModernKeePassLib.Cryptography.Cipher;
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
/// <summary>
/// Algorithms supported by <c>CryptoRandomStream</c>.
@@ -116,7 +116,7 @@ namespace ModernKeePassLibPCL.Cryptography
}
else if(genAlgorithm == CrsAlgorithm.Salsa20)
{
#if ModernKeePassLibPCL
#if ModernKeePassLib
/*var sha256 = WinRTCrypto.HashAlgorithmProvider.OpenAlgorithm(HashAlgorithm.Sha256);
var pbKey32 = sha256.HashData(pbKey);*/
var sha256 = HashAlgorithmProvider.OpenAlgorithm(HashAlgorithmNames.Sha256);

View File

@@ -6,7 +6,7 @@ using System.Text;
using System.Threading.Tasks;
using Windows.Security.Cryptography.Core;
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
public static class CryptographicHashExtensions
{

View File

@@ -21,7 +21,7 @@ using System;
using System.Collections.Generic;
using System.Text;
using System.IO;
#if ModernKeePassLibPCL
#if ModernKeePassLib
using Windows.Security.Cryptography;
using Windows.Security.Cryptography.Core;
using Org.BouncyCastle.Crypto;
@@ -31,16 +31,16 @@ using System.Security.Cryptography;
#endif
using System.Diagnostics;
using System.Runtime.InteropServices.ComTypes;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Utility;
using Org.BouncyCastle.Crypto.Tls;
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
public sealed class HashingStreamEx : Stream
{
private Stream m_sBaseStream;
private bool m_bWriting;
#if ModernKeePassLibPCL
#if ModernKeePassLib
//private ICryptoTransform m_hash;
//private CryptographicHash m_hash;
private IDigest m_hash;
@@ -81,7 +81,7 @@ namespace ModernKeePassLibPCL.Cryptography
set { throw new NotSupportedException(); }
}
#if ModernKeePassLibPCL
#if ModernKeePassLib
//public HashingStreamEx(Stream sBaseStream, bool bWriting, HashAlgorithm? hashAlgorithm)
public HashingStreamEx(Stream sBaseStream, bool bWriting, string hashAlgorithm)
#else
@@ -93,7 +93,7 @@ namespace ModernKeePassLibPCL.Cryptography
m_sBaseStream = sBaseStream;
m_bWriting = bWriting;
#if ModernKeePassLibPCL
#if ModernKeePassLib
//m_hash = WinRTCrypto.HashAlgorithmProvider.OpenAlgorithm(hashAlgorithm ?? HashAlgorithm.Sha256).CreateHash();
//m_hash = HashAlgorithmProvider.OpenAlgorithm(hashAlgorithm ?? HashAlgorithmNames.Sha256).CreateHash();
m_hash = new Sha256Digest();
@@ -125,7 +125,7 @@ namespace ModernKeePassLibPCL.Cryptography
m_sBaseStream.Flush();
}
#if ModernKeePassLibPCL || KeePassRT
#if ModernKeePassLib || KeePassRT
protected override void Dispose(bool disposing)
{
if(!disposing) return;
@@ -138,7 +138,7 @@ namespace ModernKeePassLibPCL.Cryptography
try
{
//m_hash.TransformFinalBlock(new byte[0], 0, 0);
#if ModernKeePassLibPCL
#if ModernKeePassLib
//m_pbFinalHash = (m_hash as CryptographicHash).GetValueAndReset ();
//CryptographicBuffer.CopyToByteArray(m_hash.GetValueAndReset(), out m_pbFinalHash);
m_pbFinalHash = new byte[32];

View File

@@ -20,18 +20,18 @@
using System;
using System.Collections.Generic;
using System.Text;
#if ModernKeePassLibPCL
#if ModernKeePassLib
using Windows.Security.Cryptography;
#else
using System.Security.Cryptography;
#endif
using System.Globalization;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Utility;
using Windows.Security.Cryptography.Core;
#if (!KeePassLibSD && !KeePassRT)
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
/// <summary>
/// Generate HMAC-based one-time passwords as specified in RFC 4226.
@@ -47,7 +47,7 @@ namespace ModernKeePassLibPCL.Cryptography
byte[] pbText = MemUtil.UInt64ToBytes(uFactor);
Array.Reverse(pbText); // Big-Endian
#if ModernKeePassLibPCL
#if ModernKeePassLib
/*var hsha1 = WinRTCrypto.MacAlgorithmProvider.OpenAlgorithm(MacAlgorithm.HmacSha1).CreateHash(pbSecret);
hsha1.Append(pbText);
var pbHash = hsha1.GetValueAndReset();*/

View File

@@ -22,10 +22,10 @@ using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using ModernKeePassLibPCL.Security;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Security;
using ModernKeePassLib.Utility;
namespace ModernKeePassLibPCL.Cryptography.PasswordGenerator
namespace ModernKeePassLib.Cryptography.PasswordGenerator
{
internal static class CharSetBasedGenerator
{

View File

@@ -21,10 +21,10 @@ using System;
using System.Collections.Generic;
using System.Text;
using ModernKeePassLibPCL;
using ModernKeePassLibPCL.Security;
using ModernKeePassLib;
using ModernKeePassLib.Security;
namespace ModernKeePassLibPCL.Cryptography.PasswordGenerator
namespace ModernKeePassLib.Cryptography.PasswordGenerator
{
public abstract class CustomPwGenerator
{

View File

@@ -22,7 +22,7 @@ using System.Collections;
using System.Collections.Generic;
using System.Text;
namespace ModernKeePassLibPCL.Cryptography.PasswordGenerator
namespace ModernKeePassLib.Cryptography.PasswordGenerator
{
public sealed class CustomPwGeneratorPool : IEnumerable<CustomPwGenerator>
{

View File

@@ -22,10 +22,10 @@ using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using ModernKeePassLibPCL.Security;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Security;
using ModernKeePassLib.Utility;
namespace ModernKeePassLibPCL.Cryptography.PasswordGenerator
namespace ModernKeePassLib.Cryptography.PasswordGenerator
{
internal static class PatternBasedGenerator
{

View File

@@ -22,7 +22,7 @@ using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
namespace ModernKeePassLibPCL.Cryptography.PasswordGenerator
namespace ModernKeePassLib.Cryptography.PasswordGenerator
{
public sealed class PwCharSet
{

View File

@@ -22,9 +22,9 @@ using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using ModernKeePassLibPCL.Security;
using ModernKeePassLib.Security;
namespace ModernKeePassLibPCL.Cryptography.PasswordGenerator
namespace ModernKeePassLib.Cryptography.PasswordGenerator
{
public enum PwgError
{

View File

@@ -24,11 +24,11 @@ using System.Xml.Serialization;
using System.ComponentModel;
using System.Diagnostics;
using ModernKeePassLibPCL.Interfaces;
using ModernKeePassLibPCL.Security;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Interfaces;
using ModernKeePassLib.Security;
using ModernKeePassLib.Utility;
namespace ModernKeePassLibPCL.Cryptography.PasswordGenerator
namespace ModernKeePassLib.Cryptography.PasswordGenerator
{
/// <summary>
/// Type of the password generator. Different types like generators

View File

@@ -22,9 +22,9 @@ using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Utility;
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
public static class PopularPasswords
{

View File

@@ -22,10 +22,10 @@ using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using ModernKeePassLibPCL.Cryptography.PasswordGenerator;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLib.Cryptography.PasswordGenerator;
using ModernKeePassLib.Utility;
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
/// <summary>
/// A class that offers static functions to estimate the quality of

View File

@@ -20,7 +20,7 @@
using System;
using System.Collections.Generic;
using System.Security;
#if ModernKeePassLibPCL
#if ModernKeePassLib
using Windows.Security.Cryptography;
#else
using System.Security.Cryptography;
@@ -29,14 +29,14 @@ using System.Text;
using System.Globalization;
using System.Diagnostics;
using ModernKeePassLibPCL.Cryptography.Cipher;
using ModernKeePassLibPCL.Keys;
using ModernKeePassLibPCL.Native;
using ModernKeePassLibPCL.Utility;
using ModernKeePassLibPCL.Resources;
using ModernKeePassLibPCL.Security;
using ModernKeePassLib.Cryptography.Cipher;
using ModernKeePassLib.Keys;
using ModernKeePassLib.Native;
using ModernKeePassLib.Utility;
using ModernKeePassLib.Resources;
using ModernKeePassLib.Security;
namespace ModernKeePassLibPCL.Cryptography
namespace ModernKeePassLib.Cryptography
{
/* /// <summary>
/// Return values of the <c>SelfTest.Perform</c> method.
@@ -64,7 +64,7 @@ namespace ModernKeePassLibPCL.Cryptography
TestRijndael();
TestSalsa20();
#if !ModernKeePassLibPCL
#if !ModernKeePassLib
TestNativeKeyTransform();
#endif
@@ -82,7 +82,7 @@ namespace ModernKeePassLibPCL.Cryptography
internal static void TestFipsComplianceProblems()
{
#if !ModernKeePassLibPCL && !KeePassRT
#if !ModernKeePassLib && !KeePassRT
try { new RijndaelManaged(); }
catch(Exception exAes)
{
@@ -99,7 +99,7 @@ namespace ModernKeePassLibPCL.Cryptography
private static void TestRijndael()
{
#if !ModernKeePassLibPCL && !KeePassRT
#if !ModernKeePassLib && !KeePassRT
// Test vector (official ECB test vector #356)
byte[] pbIV = new byte[16];
byte[] pbTestKey = new byte[32];
@@ -211,7 +211,7 @@ namespace ModernKeePassLibPCL.Cryptography
}
#endif
#if !ModernKeePassLibPCL
#if !ModernKeePassLib
private static void TestNativeKeyTransform()
{
#if DEBUG