Bonjour à tous,
Je fais des tests avec la fonction EncryptByPassPhrase() en sqlserver 2008 et voici mon code :
Tout se déroule correctement sauf que le résultat que j'obtiens est tronqué :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 update test set mdp=EncryptByPassPhrase('ma cle qui crypte', N'A little learning is a dangerous thing!', NULL) where test_id = 1 SELECT mdp AS 'Encrypted test', CONVERT(nvarchar, DecryptByPassphrase('ma cle qui crypte', mdp, NULL)) AS 'Decrypted test' FROM test WHERE test_id = 1
Encrypté :
Décrypté :0x010000004B15D06D6CBC387B78CCB048EE484A7950773C729DC7D3BAA162B0F9ACDF105EE437C2FA32CCF0D125B1354F3DD2E91CCB96946C57FC16AD6C7E250EF454099D26BDE17031C9600286DFFDC011A2B55A4279D20380D82F13711C703C4C4A7233
A little learning is a dangero
On peut voir qu'en décrypté mon texte a été coupé à 30 caractères. J'ai bien vu que la fonction prenait en entrée 8000 octets mais je ne pense pas y être, une idée pour m'aider ou m'expliquer cette coupure dans mon texte ?
Je précise que mon champ mdp est un varbinary(1024) en base de données.
Partager