anchor.diff:      if ff_skb'' <> ff_skb''' then 
           failwith "syncKeyBundle failed"
   
  -
  -module Workflow =
  -    open Secrets
  -    open Utilities
  +    
  +    // writeSecretKeysToDisk
   
       try
           writeSecretKeysToDisk secrets.username secrets.password None
       with | _ -> failwith "writeSecretKeysToDisk failed"
   
  +
  +module CryptoKeys =
  +    open Secrets
  +    open Utilities
  +
       let sk = readSecretKeysFromDisk None |> JsonValue.Parse
       let sk_pl = (sk?payload).AsString() |> JsonValue.Parse
   
  
positive.code: //    ciphertext  = record.ciphertext
  //    iv          = record.iv
  //    record_hmac = record.hmac
  //
  //    encryption_key = bundle.encryption_key
  //    hmac_key       = bundle.hmac_key
  //
  //    local_hmac = HMACSHA256(hmac_key, base64(ciphertext))
  //
  //    if local_hmac != record_hmac:
  //      throw Error("HMAC verification failed.")
  //
  //    cleartext = AESDecrypt(ciphertext, encryption_key, iv)
  
      let record = { iv         = (sk_pl?IV).AsString()
                     ciphertext = (sk_pl?ciphertext).AsString()
                     hmac       = (sk_pl?hmac).AsString() }
  
      let bundle = syncKeyBundle secrets.username (secrets.encryptionpassphrase |> base32Decode)
  
      let local_hmac = record.ciphertext |> Convert.FromBase64String |> (new HMACSHA256(bundle.hmac_key)).ComputeHash
  
      let cleartext = DecryptAES record.ciphertext bundle.encryption_key (record.iv |> Convert.FromBase64String)
  
negative.code:     let bytesToString (b : byte[]) = b |> Array.map (char) |> fun cs -> new string(cs)
      let bytesToHex (b : byte[]) = b |> Array.map (sprintf "%x")
  
      let removeChars (chars : string) (x : string) = 
          let set = chars.ToCharArray() |> Set.ofArray
          x.ToCharArray() |> Array.filter (fun x -> if set.Contains x then false else true) |> fun x -> new string (x)
  
      let keepAsciiPrintableChars (x : string) =
          x.ToCharArray() |> Array.filter (fun x -> if int x < 32 || int x > 126 then false else true) |> fun x -> new string (x)
      
      // Cryptography
  
  