public GetDerivedSystemSecretKeyResponse GetDerivedSystemSecretKey(GetDerivedSystemSecretKeyRequest request)
		{
			var store = SystemIdentityStore.Load();

			using (var ms = new MemoryStream())
			using (var hash = new SHA512CryptoServiceProvider2())
			{
				var input = Encoding.UTF8.GetBytes(request.Input);
				ms.Write(input, 0, input.Length);
				ms.WriteByte(0);

				var secretKey = store.SecretKey;
				ms.Write(secretKey, 0, secretKey.Length);

				ms.Position = 0;

				var result = new string(BitConverter.ToString(hash.ComputeHash(ms)).Where(c => c != '-').Select(char.ToUpperInvariant).ToArray());
				return new GetDerivedSystemSecretKeyResponse {Key = result};
			}
		}
Beispiel #2
0
        public GetDerivedSystemSecretKeyResponse GetDerivedSystemSecretKey(GetDerivedSystemSecretKeyRequest request)
        {
            var store = SystemIdentityStore.Load();

            using (var ms = new MemoryStream())
                using (var hash = new SHA512CryptoServiceProvider2())
                {
                    var input = Encoding.UTF8.GetBytes(request.Input);
                    ms.Write(input, 0, input.Length);
                    ms.WriteByte(0);

                    var secretKey = store.SecretKey;
                    ms.Write(secretKey, 0, secretKey.Length);

                    ms.Position = 0;

                    var result = new string(BitConverter.ToString(hash.ComputeHash(ms)).Where(c => c != '-').Select(char.ToUpperInvariant).ToArray());
                    return(new GetDerivedSystemSecretKeyResponse {
                        Key = result
                    });
                }
        }