{"action":"created","issue":{"url":"https://api.github.com/repos/reactjs/React.NET/issues/182","labels_url":"https://api.github.com/repos/reactjs/React.NET/issues/182/labels{/name}","comments_url":"https://api.github.com/repos/reactjs/React.NET/issues/182/comments","events_url":"https://api.github.com/repos/reactjs/React.NET/issues/182/events","html_url":"https://github.com/reactjs/React.NET/issues/182","id":114801932,"number":182,"title":"Using MD5 for the FileCacheHash causes exception to be throw if FIPS compliance group policy is enabled","user":{"login":"RPrimrose","id":1326166,"avatar_url":"https://avatars.githubusercontent.com/u/1326166?v=3","gravatar_id":"","url":"https://api.github.com/users/RPrimrose","html_url":"https://github.com/RPrimrose","followers_url":"https://api.github.com/users/RPrimrose/followers","following_url":"https://api.github.com/users/RPrimrose/following{/other_user}","gists_url":"https://api.github.com/users/RPrimrose/gists{/gist_id}","starred_url":"https://api.github.com/users/RPrimrose/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RPrimrose/subscriptions","organizations_url":"https://api.github.com/users/RPrimrose/orgs","repos_url":"https://api.github.com/users/RPrimrose/repos","events_url":"https://api.github.com/users/RPrimrose/events{/privacy}","received_events_url":"https://api.github.com/users/RPrimrose/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-11-03T12:05:51Z","updated_at":"2015-11-04T11:44:46Z","closed_at":null,"body":"Hi,\r\nwe recently tried installing an application using ReactJS.NET on a machine with the \"System cryptography: Use FIPS-compliant algorithms for encryption, hashing, and signing\" Group Policy enabled. There's more information on that policy here https://support.microsoft.com/en-us/kb/811833\r\n\r\nThe policy is causing the following exception to be thrown \"System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithm\" when trying to render components.\r\n\r\nThe issue is that in FileCacheHash.cs the hash algorithm used is MD5 and this isn't certified as FIPS compliant. \r\n\r\nI believe it's a one-line change to fix this, I've tested changing creation of _hash to\r\n`private readonly HashAlgorithm _hash = SHA512.Create(\"System.Security.Cryptography.SHA512CryptoServiceProvider\");` and that seems to work fine. \r\n\r\nIf that change sounds reasonable let me know and I'll submit a pull request. \r\n\r\n(You can recreate this error by following the instructions to turn on the group policy at http://stackoverflow.com/a/13635742 and then trying to render any MVC page that includes a @HTML.React() line in it.)"},"comment":{"url":"https://api.github.com/repos/reactjs/React.NET/issues/comments/153695745","html_url":"https://github.com/reactjs/React.NET/issues/182#issuecomment-153695745","issue_url":"https://api.github.com/repos/reactjs/React.NET/issues/182","id":153695745,"user":{"login":"RPrimrose","id":1326166,"avatar_url":"https://avatars.githubusercontent.com/u/1326166?v=3","gravatar_id":"","url":"https://api.github.com/users/RPrimrose","html_url":"https://github.com/RPrimrose","followers_url":"https://api.github.com/users/RPrimrose/followers","following_url":"https://api.github.com/users/RPrimrose/following{/other_user}","gists_url":"https://api.github.com/users/RPrimrose/gists{/gist_id}","starred_url":"https://api.github.com/users/RPrimrose/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RPrimrose/subscriptions","organizations_url":"https://api.github.com/users/RPrimrose/orgs","repos_url":"https://api.github.com/users/RPrimrose/repos","events_url":"https://api.github.com/users/RPrimrose/events{/privacy}","received_events_url":"https://api.github.com/users/RPrimrose/received_events","type":"User","site_admin":false},"created_at":"2015-11-04T11:44:46Z","updated_at":"2015-11-04T11:44:46Z","body":"Yeah, it was a new one to me as well. \r\n\r\nStrangely MSDN doesn't seem to have an official list of FIPS-compliant algorithms but http://blogs.msdn.com/b/icumove/archive/2009/01/31/working-with-fips-in-net-c.aspx has some info.\r\n\r\nI've gone with SHA1Cng in the pull-request, should be a bit faster than SHA512."}}