redgate compare engine.utlils not fips compliant

we recently ran into an issue with the current implementation of the Redgate sdk that is no longer in support. however I'm hoping redgate could potentially release a hotfix for their engine.utils to make use of a AesCryptoServiceProvider instead of sha1managed cryptography so we can have a fips compliant stack.


redgate SDK 12.4.11.2735

just in time trace below.


System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.
at System.Security.Cryptography.SHA1Managed..ctor()
at RedGate.SQLCompare.Engine.Utils.#gr(Guid #b0, UInt32 #c2, UInt16 #V3g, Byte[] #zbW)
at #8rg.#Lybd.#Jybd(DBPopulationOptions #WXrc, Int32 #y7oc, UInt16 #1Xrc, Byte[] #ZXrc, StringBuilder #0Xrc, Boolean& #3Xrc)
at #8rg.#Lybd.#Mlh(DBPopulationOptions #WXrc, Int32 #y7oc, UInt16 #1Xrc, Byte[] #ZXrc, StringBuilder #0Xrc, Boolean #3Xrc, Boolean #2Xrc, Boolean #4Xrc)
at RedGate.SQLCompare.Engine.Registration.ModelFactory.DatabaseFactory.#Llh(DBPopulationOptions #WXrc, Boolean #YXrc)
at RedGate.SQLCompare.Engine.Registration.ModelFactory.DatabaseFactory.Populate(DBPopulationOptions #WXrc)
at RedGate.SQLCompare.Engine.Registration.ModelFactory.DatabaseFactory.#b11e(Database #RHc, Options #5OPb, Boolean #go0e, DatabaseFactory #TYpd, String #j8Pb)
at RedGate.SQLCompare.Engine.Registration.ModelFactory.DatabaseFactory.#kaze(Database #RHc, LiveConnectionInstructions #eZme, Options #5OPb, IDmvModelFactory #801e, Boolean #go0e)
at RedGate.SQLCompare.Engine.Database.#vm0e.#C0k()
at RedGate.SQLCompare.Engine.Utils.GetTimeToRun(Action action)
at RedGate.SQLCompare.Engine.Database.Register(LiveConnectionInstructions connectionDetails, Options options, IDmvModelFactory factory)
at RedGate.SQLCompare.Engine.Database.Register(ConnectionProperties connectionProperties, Options options, IDmvModelFactory factory)
at Cesi.DataUpdate.Module1.sync_Databases_other(String outputstr)
at Cesi.DataUpdate.frmMain.BtnUpdate_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


Tagged:

Comments

  • Unfortunately this is something that we can't do currently. We actually investigated this roughly a year ago, and changing this algorithm breaks functionality that we use elsewhere in the snapshotting. We don't really use the hashing algorithm for security purposes, but to get a hash code that we can use internally for moving data about.

    Sorry there's not much more that we can do at present - but please let me know if you have any further questions.
    Kind regards,
    Dan Bainbridge
    Product Support Engineer | Redgate Software
Sign In or Register to comment.