/// <summary> /// 価格を暗号化します。 /// </summary> /// <param name="crypto">暗号化オブジェクト。</param> /// <param name="price">暗号化対象の価格。</param> /// <returns>暗号化された価格を表す暗号文。常に非 <c>null</c>。</returns> /// <exception cref="ArgumentNullException"><paramref name="crypto"/> is <c>null</c>.</exception> public static string EncryptPrice(this ABCrypto crypto, decimal price) { if (crypto == null) { throw new ArgumentNullException(nameof(crypto)); } Span <byte> iv = stackalloc byte[ABCrypto.IVSize]; var success = ABIV.TryCreate(iv); Debug.Assert(success); return(EncryptPrice(crypto, price, iv)); }