> Blowfish is a 8 byte block cipher so for shorter strings I'll need to pad
> the byte array, and for longer strings I'll need to make it use cipher
> block
> chaining:
> (
> https://en.wikipedia.org/wiki/Block_cipher_modes_of_operation#Cipher-block_chaining_.28CBC.29
> )
>
>
Ok, I imagined something like that. Thanks for the explanation.
For my usecase, I think this is not the more critical thing since I would
use a 8 character password for sure :)


>
>
> If you change #decryptString:with: to:
>
> Blowfish class>>decryptString: aString with: aKey
> |decryptedData |
> decryptedData := (self new ecbDecrypt: aString asByteArray with: aKey
> asByteArray  ).
>         ^String fromByteArray:  decryptedData asByteArray .
>
> Then this workspace code should work:
>
> | enc encryptedString dkey decrString |
> key:='mySecretKey'.
> enc:=Blowfish encryptString:'12345678' with: key.
> encryptedString := enc asByteArray asString.
> Transcript show: ' encrypted:  ', encryptedString; cr.
> decrString:=Blowfish decryptString: encryptedString with: key.
> Transcript show: ' decrypted:  ', decrString; cr.
>
>
>
Thanks!! That worked. Now...there is no problem with the encoding then?
Because I would need to store/retrieve the string from a file stream...so I
didn't know if I should use a TextConverter or not.

Thanks in advance,



> But with the password 'test' it will always fail because I'm not yet
> padding
> the byte array to a multiple of 8 bytes before encrypting it.
>
>
>
> Thanks for your patience
>
>
> Paul
>
>
>
> --
> View this message in context:
> http://forum.world.st/Pharo-dev-Recommendation-for-password-encryption-tp4698499p4698789.html
> Sent from the Pharo Smalltalk Developers mailing list archive at
> Nabble.com.
>
>


-- 
Mariano
http://marianopeck.wordpress.com

Reply via email to