そうです、何かを暗号化すると、それはバイト配列として扱われ、そのように返されます。 0x47 は G、72 は r などです。
DecryptByAsmKey のドキュメントを調べると、 戻り値の型は varbinary で、最大サイズは 8,000 バイトです。また、この例では変換に気付くでしょう。
したがって、文字列を暗号化および復号化する場合は、そのように変換する必要があります
SELECT CONVERT(varchar(max),DECRYPTBYASYMKEY(ASYMKEY_ID('myasymkey'), EncryptByAsymKey(AsymKey_ID('myasymkey'), 'Greg'), N'123pass!'));
プレ>また、入力に応じて varchar(max) または nvarchar(max) に変換していることを確認する必要があることに注意してください。もし試したら
SELECT CONVERT(nvarchar(max),DECRYPTBYASYMKEY(ASYMKEY_ID('myasymkey'), EncryptByAsymKey(AsymKey_ID('myasymkey'), 'Greg'), N'123pass!'));
プレ>'Greg' の入力は varchar であるため、間違っている可能性があります。