Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AES encryption discrepancy #11

Closed
abumq opened this issue Mar 8, 2018 · 4 comments
Closed

AES encryption discrepancy #11

abumq opened this issue Mar 8, 2018 · 4 comments
Labels

Comments

@abumq
Copy link
Owner

abumq commented Mar 8, 2018

AES encryption is broken in some cases

Parameters

INPUT:

{"status":0,"ack":1,"flags":2001,"max_bulk_size":50,"server_info":{"version":"2.1.1-dev-debug"},"key":"141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315","client_id":"muflihun00102030","logging_port":8778,"age":240,"date_created":1520477743}

KEY: 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315
IV: 3E552F2851473510663466583C084D29

Reproduce

## mine
echo '{"status":0,"ack":1,"flags":2001,"max_bulk_size":50,"server_info":{"version":"2.1.1-dev-debug"},"key":"141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315","client_id":"muflihun00102030","logging_port":8778,"age":240,"date_created":1520477743}' | mine -e --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29 --base64

## ripe
echo '{"status":0,"ack":1,"flags":2001,"max_bulk_size":50,"server_info":{"version":"2.1.1-dev-debug"},"key":"141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315","client_id":"muflihun00102030","logging_port":8778,"age":240,"date_created":1520477743}' | ripe -e --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29 --base64

Output

xhlE7aSsuVtzKBSNQU8eI0A81/HQ2O60YxYRXNjERTNCymJLkAbBYPlfO/wJKWfxbSPFMt0bt0mhyKoHzDsnOOdNkY1iUX99D17LM4pSzpC5iRsxoHPyx6Bp5huZtJ9dZRLom22017fFlmuW8LGVhWt5NsfR/2bwcZOICRnKMXEg06YVsvSOBMKhBtoqpzw+IWgzJxN7GZzZifsIGWvb9OMLiTufG+dMl+92mdf3EG1t7z+SWErcAX4PaNNYSl8cZDg13d2hyoeW2NGis2ga/XL+c2qIWBNbTkZqJFtThrT/Fz20FLnhJjVbmMhCcXo/lsEcF74OWtkfAvxyKGoHuQ==

or

C61944EDA4ACB95B7328148D414F1E23403CD7F1D0D8EEB46316115CD8C4453342CA624B9006C160F95F3BFC092967F16D23C532DD1BB749A1C8AA07CC3B2738E74D918D62517F7D0F5ECB338A52CE90B9891B31A073F2C7A069E61B99B49F5D6512E89B6DB4D7B7C5966B96F0B195856B7936C7D1FF66F07193880919CA317120D3A615B2F48E04C2A106DA2AA73C3E21683327137B199CD989FB08196BDBF4E30B893B9F1BE74C97EF7699D7F7106D6DEF3F92584ADC017E0F68D3584A5F1C643835DDDDA1CA8796D8D1A2B3681AFD72FE736A8858135B4E466A245B5386B4FF173DB414B9E126355B98C842717A3F96C11C17BE0E5AD91F02FC72286A07B9

Expected Output

xhlE7aSsuVtzKBSNQU8eI0A81/HQ2O60YxYRXNjERTNCymJLkAbBYPlfO/wJKWfxbSPFMt0bt0mhyKoHzDsnOOdNkY1iUX99D17LM4pSzpC5iRsxoHPyx6Bp5huZtJ9dZRLom22017fFlmuW8LGVhWt5NsfR/2bwcZOICRnKMXEg06YVsvSOBMKhBtoqpzw+IWgzJxN7GZzZifsIGWvb9OMLiTufG+dMl+92mdf3EG1t7z+SWErcAX4PaNNYSl8cZDg13d2hyoeW2NGis2ga/XL+c2qIWBNbTkZqJFtThrT/Fz20FLnhJjVbmMhCcXo/lsEcF74OWtkfAvxyKGoHuTFFrw5fRgqIGkLqgTEgmBU=

or

C61944EDA4ACB95B7328148D414F1E23403CD7F1D0D8EEB46316115CD8C4453342CA624B9006C160F95F3BFC092967F16D23C532DD1BB749A1C8AA07CC3B2738E74D918D62517F7D0F5ECB338A52CE90B9891B31A073F2C7A069E61B99B49F5D6512E89B6DB4D7B7C5966B96F0B195856B7936C7D1FF66F07193880919CA317120D3A615B2F48E04C2A106DA2AA73C3E21683327137B199CD989FB08196BDBF4E30B893B9F1BE74C97EF7699D7F7106D6DEF3F92584ADC017E0F68D3584A5F1C643835DDDDA1CA8796D8D1A2B3681AFD72FE736A8858135B4E466A245B5386B4FF173DB414B9E126355B98C842717A3F96C11C17BE0E5AD91F02FC72286A07B93145AF0E5F460A881A42EA8131209815

Difference is last few bits TFFrw5fRgqIGkLqgTEgmBU=

@abumq abumq added the bug label Mar 8, 2018
@abumq
Copy link
Owner Author

abumq commented Mar 8, 2018

this suggests ripe is broken

echo C61944EDA4ACB95B7328148D414F1E23403CD7F1D0D8EEB46316115CD8C4453342CA624B9006C160F95F3BFC092967F16D23C532DD1BB749A1C8AA07CC3B2738E74D918D62517F7D0F5ECB338A52CE90B9891B31A073F2C7A069E61B99B49F5D6512E89B6DB4D7B7C5966B96F0B195856B7936C7D1FF66F07193880919CA317120D3A615B2F48E04C2A106DA2AA73C3E21683327137B199CD989FB08196BDBF4E30B893B9F1BE74C97EF7699D7F7106D6DEF3F92584ADC017E0F68D3584A5F1C643835DDDDA1CA8796D8D1A2B3681AFD72FE736A8858135B4E466A245B5386B4FF173DB414B9E126355B98C842717A3F96C11C17BE0E5AD91F02FC72286A07B9 | mine -d --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29

or

echo xhlE7aSsuVtzKBSNQU8eI0A81/HQ2O60YxYRXNjERTNCymJLkAbBYPlfO/wJKWfxbSPFMt0bt0mhyKoHzDsnOOdNkY1iUX99D17LM4pSzpC5iRsxoHPyx6Bp5huZtJ9dZRLom22017fFlmuW8LGVhWt5NsfR/2bwcZOICRnKMXEg06YVsvSOBMKhBtoqpzw+IWgzJxN7GZzZifsIGWvb9OMLiTufG+dMl+92mdf3EG1t7z+SWErcAX4PaNNYSl8cZDg13d2hyoeW2NGis2ga/XL+c2qIWBNbTkZqJFtThrT/Fz20FLnhJjVbmMhCcXo/lsEcF74OWtkfAvxyKGoHuQ== | mine -d --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29 --base64

Decrypts correctly

{"status":0,"ack":1,"flags":2001,"max_bulk_size":50,"server_info":{"version":"2.1.1-dev-debug"},"key":"141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315","client_id":"muflihun00102030","logging_port":8778,"age":240,"date_created":1520477743}

Just this does not work (encrypt with mine decrypt with ripe)

echo xhlE7aSsuVtzKBSNQU8eI0A81/HQ2O60YxYRXNjERTNCymJLkAbBYPlfO/wJKWfxbSPFMt0bt0mhyKoHzDsnOOdNkY1iUX99D17LM4pSzpC5iRsxoHPyx6Bp5huZtJ9dZRLom22017fFlmuW8LGVhWt5NsfR/2bwcZOICRnKMXEg06YVsvSOBMKhBtoqpzw+IWgzJxN7GZzZifsIGWvb9OMLiTufG+dMl+92mdf3EG1t7z+SWErcAX4PaNNYSl8cZDg13d2hyoeW2NGis2ga/XL+c2qIWBNbTkZqJFtThrT/Fz20FLnhJjVbmMhCcXo/lsEcF74OWtkfAvxyKGoHuQ== | ripe -d --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29 --base64

where as encrypt with ripe decrypt with mine works fine

echo xhlE7aSsuVtzKBSNQU8eI0A81/HQ2O60YxYRXNjERTNCymJLkAbBYPlfO/wJKWfxbSPFMt0bt0mhyKoHzDsnOOdNkY1iUX99D17LM4pSzpC5iRsxoHPyx6Bp5huZtJ9dZRLom22017fFlmuW8LGVhWt5NsfR/2bwcZOICRnKMXEg06YVsvSOBMKhBtoqpzw+IWgzJxN7GZzZifsIGWvb9OMLiTufG+dMl+92mdf3EG1t7z+SWErcAX4PaNNYSl8cZDg13d2hyoeW2NGis2ga/XL+c2qIWBNbTkZqJFtThrT/Fz20FLnhJjVbmMhCcXo/lsEcF74OWtkfAvxyKGoHuTFFrw5fRgqIGkLqgTEgmBU= | mine -d --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29 --base64

@abumq abumq closed this as completed Mar 8, 2018
@abumq abumq reopened this Mar 8, 2018
@abumq
Copy link
Owner Author

abumq commented Mar 8, 2018

echo abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabc | mine -e --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29 | mine -d --hex | openssl enc -aes-256-cbc -d -K 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 -iv 3E552F2851473510663466583C084D29

works (255 chars)

but this doesn't (256 chars)

echo abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcd | mine -e --aes --key 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 --iv 3E552F2851473510663466583C084D29 | mine -d --hex | openssl enc -aes-256-cbc -d -K 141E4B143B314C71203E43481F1566504B3F52665847141F02104335650C5315 -iv 3E552F2851473510663466583C084D29

@abumq
Copy link
Owner Author

abumq commented Mar 8, 2018

Only happening with multiples of 16 char input

## 16 chars - :(
echo abcdefgabcdefgab | mine -e --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 | ripe -d --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 --hex
## 32 chars - :(
echo abcdefgabcdefgababcdefgabcdefgab | mine -e --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 | ripe -d --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 --hex
## 255 chars - works
echo abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabc | mine -e --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 | ripe -d --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 --hex
## 256 chars - :(
echo abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcd | mine -e --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 | ripe -d --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 --hex
## 257 chars - works
echo abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcde | mine -e --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 | ripe -d --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 --hex
## 512 chars - :(
echo abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcd | mine -e --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 | ripe -d --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 --hex
## 513 chars - works 
echo abcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcdefgabcde | mine -e --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 | ripe -d --aes --key 163E6AC9A9EB43253AC237D849BDD22C4798393D38FBE322F7E593E318F1AEAF --iv a14c54563269e9e368f56b325f04ff00 --hex

@abumq
Copy link
Owner Author

abumq commented Mar 8, 2018

3f61cb8

@abumq abumq closed this as completed Mar 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant