CryptographicEngine.Sign(CryptographicKey, IBuffer) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
디지털 콘텐츠에 서명합니다. 자세한 내용은 MAC, 해시 및 서명을 참조하세요.
public:
static IBuffer ^ Sign(CryptographicKey ^ key, IBuffer ^ data);
static IBuffer Sign(CryptographicKey const& key, IBuffer const& data);
public static IBuffer Sign(CryptographicKey key, IBuffer data);
function sign(key, data)
Public Shared Function Sign (key As CryptographicKey, data As IBuffer) As IBuffer
매개 변수
- key
- CryptographicKey
서명에 사용되는 키입니다.
- data
- IBuffer
서명할 데이터입니다.
반환
데이터의 서명입니다.
예제
public IBuffer SampleCreateHMAC(
String strMsg,
String strAlgName,
out IBuffer buffMsg,
out CryptographicKey hmacKey)
{
// Create a MacAlgorithmProvider object for the specified algorithm.
MacAlgorithmProvider objMacProv = MacAlgorithmProvider.OpenAlgorithm(strAlgName);
// Create a buffer that contains the message to be signed.
BinaryStringEncoding encoding = BinaryStringEncoding.Utf8;
buffMsg = CryptographicBuffer.ConvertStringToBinary(strMsg, encoding);
// Create a key to be signed with the message.
IBuffer buffKeyMaterial = CryptographicBuffer.GenerateRandom(objMacProv.MacLength);
hmacKey = objMacProv.CreateKey(buffKeyMaterial);
// Sign the key and message together.
IBuffer buffHMAC = CryptographicEngine.Sign(hmacKey, buffMsg);
// Verify that the HMAC length is correct for the selected algorithm
if (buffHMAC.Length != objMacProv.MacLength)
{
throw new Exception("Error computing digest");
}
// Return the HMAC.
return buffHMAC;
}
설명
키가 지속형 키이고 작업에 UI가 필요하거나 시간이 오래 걸리는 경우 SignAsync 메서드를 대신 사용합니다.
디지털 데이터 서명에 대한 자세한 내용은 MAC, 해시 및 서명을 참조하세요.