X-Git-Url: http://git.euphorik.ch/?p=rup.git;a=blobdiff_plain;f=WebSharper%2FCrypto.fs;h=f85825faaad12687ff600e06f1f06cbbd13b73bf;hp=5ad3d99f8b1f6dd5d63508375e395a3240070a74;hb=51aa7c917b3ecfb80d06d5a06cc9f553b8bc91c6;hpb=b1f2c5b803a7e85a3b0c8d999cf9a13d28c6c6c2 diff --git a/WebSharper/Crypto.fs b/WebSharper/Crypto.fs index 5ad3d99..f85825f 100644 --- a/WebSharper/Crypto.fs +++ b/WebSharper/Crypto.fs @@ -21,6 +21,7 @@ let generateKey () : Key = let bytes = randBytes (keySize / 8) Convert.ToBase64String bytes |> WebUtility.UrlEncode +// TODO: return a Result let encrypt (key : Key) (name : string) : string = let keyAsBytes = WebUtility.UrlDecode key |> Convert.FromBase64String let iv = randBytes (keySize / 8) @@ -45,6 +46,7 @@ let encrypt (key : Key) (name : string) : string = stream.Read (result, iv.Length + hash.Length, int stream.Length) |> ignore "1" + Convert.ToBase64String result |> WebUtility.UrlEncode +// TODO: return a Result let decrypt (key : Key) (cipher : string) (urlDecode : bool) : string = let version = cipher.Substring (0, 1) |> int if version <> 1 then