From 078f4a506eeede682494842d08d3c8019ca102be Mon Sep 17 00:00:00 2001 From: Kevin Giszewski Date: Thu, 7 Sep 2017 11:01:29 -0400 Subject: [PATCH] Add obfuscation --- .../Extensions/ArchetypeHelper.cs | 4 ++- .../Models/ArchetypeGlobalSettings.cs | 28 +++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/app/Umbraco/Umbraco.Archetype/Extensions/ArchetypeHelper.cs b/app/Umbraco/Umbraco.Archetype/Extensions/ArchetypeHelper.cs index 7bfb3ac..837a67b 100644 --- a/app/Umbraco/Umbraco.Archetype/Extensions/ArchetypeHelper.cs +++ b/app/Umbraco/Umbraco.Archetype/Extensions/ArchetypeHelper.cs @@ -174,7 +174,9 @@ namespace Archetype.Extensions archetypeVersion = DllVersion(), id = ArchetypeGlobalSettings.Instance.Id }), Encoding.UTF8, "application/json"); - + + client.DefaultRequestHeaders.Add("x-api-key-id", ArchetypeGlobalSettings.Instance.ApiKey.ToString()); + var response = client.PostAsync(new Uri(Constants.NotificationUrl), content).Result; if (response.StatusCode == HttpStatusCode.OK) diff --git a/app/Umbraco/Umbraco.Archetype/Models/ArchetypeGlobalSettings.cs b/app/Umbraco/Umbraco.Archetype/Models/ArchetypeGlobalSettings.cs index 7a67bb3..b45594d 100644 --- a/app/Umbraco/Umbraco.Archetype/Models/ArchetypeGlobalSettings.cs +++ b/app/Umbraco/Umbraco.Archetype/Models/ArchetypeGlobalSettings.cs @@ -1,5 +1,7 @@ using System; +using System.Collections.Generic; using System.IO; +using System.Text; using Newtonsoft.Json; using Umbraco.Core.IO; using Umbraco.Core.Logging; @@ -11,6 +13,8 @@ namespace Archetype.Models public bool CheckForUpdates { get; set; } public Guid Id { get; set; } + public Guid ApiKey = _getApiKey(); + private static ArchetypeGlobalSettings _instance; private static string _pathToConfig = @"~/Config/Archetype.config.js"; @@ -100,5 +104,29 @@ namespace Archetype.Models _instance.CheckForUpdates = true; _instance.Save(); } + + private static Guid _getApiKey() + { + //this is just obfuscation and an attempt to keep out most but not the determined hacker + var array = new [] + { + "RTA4MUZDRjA=", + "NzkzQS1BRDIw", + "OTI3QjFDNjkwQTYy", + "MjI0OQ==" + }; + + return new Guid(string.Format("{0}-{1}-{3}-{2}", + _decodeBase64(array[0]), + _decodeBase64(array[1]), + _decodeBase64(array[2]), + _decodeBase64(array[3]) + )); + } + + private static string _decodeBase64(string input) + { + return Encoding.UTF8.GetString(Convert.FromBase64String(input)); + } } }