From 586a6202a2eb46ee1b76ca1c3190f2559d858380 Mon Sep 17 00:00:00 2001 From: sta Date: Tue, 4 Aug 2015 15:50:36 +0900 Subject: [PATCH] Fix for pull request #146 --- websocket-sharp/WebSocket.cs | 4 ++-- websocket-sharp/WebSocketFrame.cs | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/websocket-sharp/WebSocket.cs b/websocket-sharp/WebSocket.cs index 237b06b9..49ef30af 100644 --- a/websocket-sharp/WebSocket.cs +++ b/websocket-sharp/WebSocket.cs @@ -115,6 +115,7 @@ namespace WebSocketSharp #region Internal Fields internal const int FragmentLength = 1016; // Max value is Int32.MaxValue - 14. + internal static readonly RandomNumberGenerator RandomNumber = new RNGCryptoServiceProvider (); #endregion @@ -1627,8 +1628,7 @@ namespace WebSocketSharp internal static string CreateBase64Key () { var src = new byte[16]; - var rand = new Random (); - rand.NextBytes (src); + RandomNumber.GetBytes (src); return Convert.ToBase64String (src); } diff --git a/websocket-sharp/WebSocketFrame.cs b/websocket-sharp/WebSocketFrame.cs index 4142fab8..427bb597 100644 --- a/websocket-sharp/WebSocketFrame.cs +++ b/websocket-sharp/WebSocketFrame.cs @@ -277,8 +277,7 @@ namespace WebSocketSharp private static byte[] createMaskingKey () { var key = new byte[4]; - var rand = new Random (); - rand.NextBytes (key); + WebSocket.RandomNumber.GetBytes (key); return key; }