diff --git a/shadowsocks-csharp/Controller/Service/PACServer.cs b/shadowsocks-csharp/Controller/Service/PACServer.cs index 30bf246f..616a1536 100644 --- a/shadowsocks-csharp/Controller/Service/PACServer.cs +++ b/shadowsocks-csharp/Controller/Service/PACServer.cs @@ -5,7 +5,7 @@ using System.IO; using System.Net; using System.Net.Sockets; using System.Text; - +using Shadowsocks.Encryption; using Shadowsocks.Model; using Shadowsocks.Properties; using Shadowsocks.Util; @@ -40,7 +40,7 @@ namespace Shadowsocks.Controller if (config.secureLocalPac) { var rd = new byte[32]; - new Random().NextBytes(rd); + RNG.GetBytes(rd); PacSecret = $"&secret={Convert.ToBase64String(rd)}"; } else diff --git a/shadowsocks-csharp/Encryption/RNG.cs b/shadowsocks-csharp/Encryption/RNG.cs index cb783144..6e31f1f5 100644 --- a/shadowsocks-csharp/Encryption/RNG.cs +++ b/shadowsocks-csharp/Encryption/RNG.cs @@ -26,6 +26,11 @@ namespace Shadowsocks.Encryption Init(); } + public static void GetBytes(byte[] buf) + { + _rng.GetBytes(buf); + } + public static void GetBytes(byte[] buf, int len) { try