Sysop: | Amessyroom |
---|---|
Location: | Fayetteville, NC |
Users: | 43 |
Nodes: | 6 (0 / 6) |
Uptime: | 96:14:21 |
Calls: | 290 |
Files: | 904 |
Messages: | 76,426 |
On 1/3/2025 7:13 AM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 12/31/2024 5:00 PM, Stefan Claas wrote:
echo 'Happy News Year 2025' | ternary 2112102022020111101010222211010022112012102120110020100021120220 10000111010121200020221000211000220022020
$ echo 'Happy News Year 2025' | ternary | ternary -d
Happy News Year 2025
(My program works with binary data as well.)
Side note, try to get 3-ary roots from the following... It's not that hard but its fun wrt the results one can reap from it:
https://paulbourke.org/fractals/multijulia
Nice, but I do no longer do Computer Graphics.
In a sense, its all about discovering the n-ary roots of a complex
number... For fun, I mapped actual data to said roots... :^)
I think I called them nits. trits would be 3-ary, akin to ternary.
I think this is a really cool (but then with a mouse instead
of a tablet) when traveling and exchanging keys in advance with
family and friends and using a Bitmessage's alt.anonymous.messages
chan and my p4bm program, in case Computers are compromised at the destination, when not carrying one and you need no credentials and
only the keys on a Kanguru Defender 3000.
https://github.com/706f6c6c7578/xorpng
https://github.com/706f6c6c7578/p4bm
On 1/4/2025 10:06 AM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/3/2025 7:13 AM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 12/31/2024 5:00 PM, Stefan Claas wrote:
echo 'Happy News Year 2025' | ternary 2112102022020111101010222211010022112012102120110020100021120220 10000111010121200020221000211000220022020
$ echo 'Happy News Year 2025' | ternary | ternary -d
Happy News Year 2025
(My program works with binary data as well.)
Side note, try to get 3-ary roots from the following... It's not that hard but its fun wrt the results one can reap from it:
https://paulbourke.org/fractals/multijulia
Nice, but I do no longer do Computer Graphics.
In a sense, its all about discovering the n-ary roots of a complex number... For fun, I mapped actual data to said roots... :^)
I think I called them nits. trits would be 3-ary, akin to ternary.
Since you do a lot graphics programming, have you ever thought
about encrypting images with XOR?
Indeed.
I just did a small test with
my xorpng program and wrote a message for you with my little
WACOM tablet and Microsoft Paint. :-)
I think this is a really cool (but then with a mouse instead
of a tablet) when traveling and exchanging keys in advance with
family and friends and using a Bitmessage's alt.anonymous.messages
chan and my p4bm program, in case Computers are compromised at the destination, when not carrying one and you need no credentials and
only the keys on a Kanguru Defender 3000.
Here are the test images:
https://jmp.sh/jp1A5kvq
and here is my xorpng and p4bm program:
https://github.com/706f6c6c7578/xorpng
https://github.com/706f6c6c7578/p4bm
I am sure you are familiar with tux:
https://words.filippo.io/the-ecb-penguin/
We can encrypt that image in many different ways, indeed.
On 1/4/2025 1:13 PM, Chris M. Thomasson wrote:
On 1/4/2025 1:08 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/4/2025 10:06 AM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/3/2025 7:13 AM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 12/31/2024 5:00 PM, Stefan Claas wrote:
echo 'Happy News Year 2025' | ternary 2112102022020111101010222211010022112012102120110020100021120220
10000111010121200020221000211000220022020
$ echo 'Happy News Year 2025' | ternary | ternary -d
Happy News Year 2025
(My program works with binary data as well.)
Side note, try to get 3-ary roots from the following... It's not
that
hard but its fun wrt the results one can reap from it:
https://paulbourke.org/fractals/multijulia
Nice, but I do no longer do Computer Graphics.
In a sense, its all about discovering the n-ary roots of a complex number... For fun, I mapped actual data to said roots... :^)
I think I called them nits. trits would be 3-ary, akin to ternary.
Since you do a lot graphics programming, have you ever thought
about encrypting images with XOR?
Indeed.
I just did a small test with
my xorpng program and wrote a message for you with my little
WACOM tablet and Microsoft Paint. :-)
I think this is a really cool (but then with a mouse instead
of a tablet) when traveling and exchanging keys in advance with family and friends and using a Bitmessage's alt.anonymous.messages chan and my p4bm program, in case Computers are compromised at the destination, when not carrying one and you need no credentials and only the keys on a Kanguru Defender 3000.
Here are the test images:
https://jmp.sh/jp1A5kvq
and here is my xorpng and p4bm program:
https://github.com/706f6c6c7578/xorpng https://github.com/706f6c6c7578/p4bm
I am sure you are familiar with tux:
https://words.filippo.io/the-ecb-penguin/
We can encrypt that image in many different ways, indeed.
So, do you have an image encryption solution too?
Here is an analysis of my k-1.png and encrypted.png.
(one must make sure that the keys are safely stored)
https://jmp.sh/9fvXJvmo
$ python3 image_analysis.py
fourier_peaks: 194566.0
wavelet_energy: {'LL': 16776624377.0, 'LH': 1891692481.0000002, 'HL': 621089515.0000001, 'HH': 619257027.0000001}
histogram_variance: {'red': 791946.0, 'green': 792130.44, 'blue': 792015.6}
lsb_ratio: 0.9868576388888889
noise_level: 45.981313657407405
region_hash_similarity: 1.0
total_pixels: 230400
different_pixels: 227953
difference_percentage: 98.93793402777777
Well, an older one was to trying to hide the points that do not escape
in any escape time fractal. You can take any image, any file for that matter and encrypt it. Then view the file, say with one channel of
color, say, red. Each byte is mapped to a color, 0...255 Then we can see
it in this single color. Sometimes ciphers give off some rather
interesting visual hints! :^)
This is using fractal images to try to encrypt plaintext:
http://funwithfractals.atspace.cc/ffe
Now, for some fun wrt floating point issues... Have you messed around
with storing data in the n-ary roots of complex numbers? they can
actually create interesting renderings using real user data.
https://groups.google.com/g/comp.lang.c++/c/bB1wA4wvoFc/m/ozDpUBlTAAAJ
When you get really bored! ;^)
On 1/4/2025 2:10 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
Now, for some fun wrt floating point issues... Have you messed around with storing data in the n-ary roots of complex numbers? they can actually create interesting renderings using real user data.
https://groups.google.com/g/comp.lang.c++/c/bB1wA4wvoFc/m/ozDpUBlTAAAJ
When you get really bored! ;^)
Well, I no longer do Computer Graphics, with formulas, like for fractals etc. , or 3D CGI and 3D printing. Not sure if I ever will return to that.
The only interests with graphics is, when it comes to encryption/decryption images.
Fwiw, do you like stereograms? I created some with some of my depth maps created in GLSL shaders. Can you see this one:
https://i.ibb.co/gwHwpFL/image.png
I have an idea about them. What about combining an anaglyph with a
stereogram such that the observer would need to do the "eye trick" while wearing the red and blue glasses?
On 1/4/2025 2:10 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
Now, for some fun wrt floating point issues... Have you messed around with storing data in the n-ary roots of complex numbers? they can actually create interesting renderings using real user data.
https://groups.google.com/g/comp.lang.c++/c/bB1wA4wvoFc/m/ozDpUBlTAAAJ
When you get really bored! ;^)
Well, I no longer do Computer Graphics, with formulas, like for fractals etc. , or 3D CGI and 3D printing. Not sure if I ever will return to that.
The only interests with graphics is, when it comes to encryption/decryption images.
Keep in mind that you can turn any "bag of bytes" into an image.
On 1/4/2025 2:41 PM, Chris M. Thomasson wrote:
On 1/4/2025 2:10 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
Now, for some fun wrt floating point issues... Have you messed around with storing data in the n-ary roots of complex numbers? they can actually create interesting renderings using real user data.
https://groups.google.com/g/comp.lang.c++/c/bB1wA4wvoFc/m/ozDpUBlTAAAJ
When you get really bored! ;^)
Well, I no longer do Computer Graphics, with formulas, like for fractals etc. , or 3D CGI and 3D printing. Not sure if I ever will return to that.
The only interests with graphics is, when it comes to encryption/ decryption
images.
Fwiw, do you like stereograms? I created some with some of my depth maps created in GLSL shaders. Can you see this one:
https://i.ibb.co/gwHwpFL/image.png
Here is my depth map:
https://www.facebook.com/photo/?fbid=1306311583861170&set=pcb.1306311693861159
Chris M. Thomasson wrote:
On 1/4/2025 2:10 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
Now, for some fun wrt floating point issues... Have you messed around with storing data in the n-ary roots of complex numbers? they can actually create interesting renderings using real user data.
https://groups.google.com/g/comp.lang.c++/c/bB1wA4wvoFc/m/ozDpUBlTAAAJ
When you get really bored! ;^)
Well, I no longer do Computer Graphics, with formulas, like for fractals etc. , or 3D CGI and 3D printing. Not sure if I ever will return to that.
The only interests with graphics is, when it comes to encryption/decryption
images.
Fwiw, do you like stereograms? I created some with some of my depth maps created in GLSL shaders. Can you see this one:
https://i.ibb.co/gwHwpFL/image.png
Yes, I can see it.
I have an idea about them. What about combining an anaglyph with a stereogram such that the observer would need to do the "eye trick" while wearing the red and blue glasses?
I created in 1995, with Photoshop 2.5.1/3.0 a stereo image, which needs red/blue glasses. :-) I uploaded it to rarible.com as NFT for 50 ETH,
but it is no longer there, nor on my harddrive. :-( It looked really
really cool and was called ORIGAMI.
If instead you mean some kind of "special, PNG aware, encryptor that
only encrypted the bitmap data of a PNG", but left the file as
otherwise a proper PNG image structure, then that is slightly tricky
(and an algorithm that is only useful for PNG's alone).
Chris M. Thomasson wrote:
On 1/4/2025 2:10 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
Now, for some fun wrt floating point issues... Have you messed around
with storing data in the n-ary roots of complex numbers? they can
actually create interesting renderings using real user data.
https://groups.google.com/g/comp.lang.c++/c/bB1wA4wvoFc/m/ozDpUBlTAAAJ >> > >
When you get really bored! ;^)
Well, I no longer do Computer Graphics, with formulas, like for fractals >> > etc. , or 3D CGI and 3D printing. Not sure if I ever will return to that. >> >
The only interests with graphics is, when it comes to encryption/decryption
images.
Keep in mind that you can turn any "bag of bytes" into an image.
Well, yes ... (see my file2png program) but it is IMHO tricky to do
image encryption/decryption of .png images, or not?
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that
only encrypted the bitmap data of a PNG", but left the file as
otherwise a proper PNG image structure, then that is slightly tricky
(and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
On 1/4/2025 4:21 PM, Stefan Claas wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that
only encrypted the bitmap data of a PNG", but left the file as
otherwise a proper PNG image structure, then that is slightly tricky
(and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Well, take a good ol' bag o' bytes and turn it into a valid png?
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that
only encrypted the bitmap data of a PNG", but left the file as
otherwise a proper PNG image structure, then that is slightly tricky
(and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized for
just encrypting the internal bitmap data within a PNG, leaving the rest
as a PNG file, when a generic "byte stream" encryptor will encrypt the
entire PNG with no extra effort?
On 1/4/2025 4:19 PM, Stefan Claas wrote:
Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/4/2025 2:10 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
Now, for some fun wrt floating point issues... Have you messed around
with storing data in the n-ary roots of complex numbers? they can actually create interesting renderings using real user data.
https://groups.google.com/g/comp.lang.c++/c/bB1wA4wvoFc/m/ozDpUBlTAAAJ
When you get really bored! ;^)
Well, I no longer do Computer Graphics, with formulas, like for fractals
etc. , or 3D CGI and 3D printing. Not sure if I ever will return to that.
The only interests with graphics is, when it comes to encryption/decryption
images.
Fwiw, do you like stereograms? I created some with some of my depth maps
created in GLSL shaders. Can you see this one:
https://i.ibb.co/gwHwpFL/image.png
Yes, I can see it.
I have an idea about them. What about combining an anaglyph with a stereogram such that the observer would need to do the "eye trick" while
wearing the red and blue glasses?
I created in 1995, with Photoshop 2.5.1/3.0 a stereo image, which needs red/blue glasses. :-) I uploaded it to rarible.com as NFT for 50 ETH,
but it is no longer there, nor on my harddrive. :-( It looked really really cool and was called ORIGAMI.
Well,I found it on rarible.com, sorry my mistake.
<https://rarible.com/token/0xc9154424b823b10579895ccbe442d41b9abd96ed:33722708843760813648285509687083650090679594480478541226033658120821450735646>
use the maginfying glass to see the original size and use red/blues glasses to see the effect. :-)
:^) I found one of my older anaglyphs I knew I posted before. the left
hand side should seem to project "into" the screen, and the right one
out of it. Can you see with with your red and blue goggles? glasses,
lol. ;^) I had to use two cameras in my scene to do this. One for each
eye of the observer.
https://i.ibb.co/qm3jg4z/image.png
https://www.facebook.com/photo/?fbid=135603427598664&set=pcb.135603700931970
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that only encrypted the bitmap data of a PNG", but left the file as otherwise a proper PNG image structure, then that is slightly tricky (and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized for
just encrypting the internal bitmap data within a PNG, leaving the rest
as a PNG file, when a generic "byte stream" encryptor will encrypt the entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that
only encrypted the bitmap data of a PNG", but left the file as
otherwise a proper PNG image structure, then that is slightly tricky
(and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized for
just encrypting the internal bitmap data within a PNG, leaving the rest
as a PNG file, when a generic "byte stream" encryptor will encrypt the
entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware,
encryptor that only encrypted the bitmap data of a PNG", but
left the file as otherwise a proper PNG image structure, then
that is slightly tricky (and an algorithm that is only useful
for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized
for just encrypting the internal bitmap data within a PNG, leaving
the rest as a PNG file, when a generic "byte stream" encryptor
will encrypt the entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
I.e, first you put data with file2png in a .png and then encrypt it
to finally post it. I can do this now with my xorpic program, but I
thought a solution with AES-GCM or XChaCha20+ploy1305 is better.
Stefan Claas <pollux@tilde.club> wrote:
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware,
encryptor that only encrypted the bitmap data of a PNG", but
left the file as otherwise a proper PNG image structure, then
that is slightly tricky (and an algorithm that is only useful
for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized
for just encrypting the internal bitmap data within a PNG, leaving
the rest as a PNG file, when a generic "byte stream" encryptor
will encrypt the entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
I.e, first you put data with file2png in a .png and then encrypt it
to finally post it. I can do this now with my xorpic program, but I thought a solution with AES-GCM or XChaCha20+ploy1305 is better.
The "path" I outlined in my previous post, where you utilize the netpbm
image format as your 'intermediary' would allow you to use any generic encryption routine you like, while also allowing you to convert the
encrypted binary data to/from an image format of your choice (well,
your choice within the set of other formats for which NetPBM has
to/from converters available).
This frees you from having to understand the internal structure of the various image formats. You just work with the netpbm format (a raw
binary bit/pixel block) for the encrypt/decrypt/padding operations, and delegate all the "image format" complexity to the netpbm library.
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware,
encryptor that only encrypted the bitmap data of a PNG",
but left the file as otherwise a proper PNG image
structure, then that is slightly tricky (and an algorithm
that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is
specalized for just encrypting the internal bitmap data within
a PNG, leaving the rest as a PNG file, when a generic "byte
stream" encryptor will encrypt the entire PNG with no extra
effort?
To make more content as allowed postable on social media, like
X.
I.e, first you put data with file2png in a .png and then encrypt
it to finally post it. I can do this now with my xorpic program,
but I thought a solution with AES-GCM or XChaCha20+ploy1305 is
better.
The "path" I outlined in my previous post, where you utilize the
netpbm image format as your 'intermediary' would allow you to use
any generic encryption routine you like, while also allowing you to convert the encrypted binary data to/from an image format of your
choice (well, your choice within the set of other formats for which NetPBM has to/from converters available).
This frees you from having to understand the internal structure of
the various image formats. You just work with the netpbm format (a
raw binary bit/pixel block) for the encrypt/decrypt/padding
operations, and delegate all the "image format" complexity to the
netpbm library.
Thank you! My ppmenc tool works nicely, here are the test images:
https://jmp.sh/HZM9ML9f
The big problem I face when converting the encryypted image to .png
and back a diff shows a difference and the decryption fails.
Maybe someone can figure out what to do, so that a converted .ppm can
be posted online , for viewers/readers and then can be converted back
to the original .ppm, which shows no difference.
We can't read your mind over Usenet so can you show how you converted
the encrypted image to a png and back.
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware,
encryptor that only encrypted the bitmap data of a PNG",
but left the file as otherwise a proper PNG image
structure, then that is slightly tricky (and an algorithm
that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is
specalized for just encrypting the internal bitmap data within
a PNG, leaving the rest as a PNG file, when a generic "byte
stream" encryptor will encrypt the entire PNG with no extra
effort?
To make more content as allowed postable on social media, like
X.
I.e, first you put data with file2png in a .png and then encrypt
it to finally post it. I can do this now with my xorpic program,
but I thought a solution with AES-GCM or XChaCha20+ploy1305 is
better.
The "path" I outlined in my previous post, where you utilize the
netpbm image format as your 'intermediary' would allow you to use
any generic encryption routine you like, while also allowing you to
convert the encrypted binary data to/from an image format of your
choice (well, your choice within the set of other formats for which
NetPBM has to/from converters available).
This frees you from having to understand the internal structure of
the various image formats. You just work with the netpbm format (a
raw binary bit/pixel block) for the encrypt/decrypt/padding
operations, and delegate all the "image format" complexity to the
netpbm library.
Thank you! My ppmenc tool works nicely, here are the test images:
https://jmp.sh/HZM9ML9f
The big problem I face when converting the encryypted image to .png
and back a diff shows a difference and the decryption fails.
Maybe someone can figure out what to do, so that a converted .ppm can
be posted online , for viewers/readers and then can be converted back
to the original .ppm, which shows no difference.
On 1/5/2025 2:06 PM, Chris M. Thomasson wrote:
On 1/5/2025 1:25 AM, Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that
only encrypted the bitmap data of a PNG", but left the file as otherwise a proper PNG image structure, then that is slightly tricky
(and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized for just encrypting the internal bitmap data within a PNG, leaving the rest as a PNG file, when a generic "byte stream" encryptor will encrypt the entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
Well, posting a png to say, facebook, well... It's probablly going to
turn it into a jpg... This can ruin the embedded ciphertext in the png image...
Actually, the damn FB allows me to send my links with embedded
ciphertext just fine.
On 1/5/2025 1:24 AM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/4/2025 4:21 PM, Stefan Claas wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that only encrypted the bitmap data of a PNG", but left the file as otherwise a proper PNG image structure, then that is slightly tricky (and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Well, take a good ol' bag o' bytes and turn it into a valid png?
No, encrypt a .png, so that an encrypted noise image comes out.
Are you talking about encrypting something A. Taking the resulting
ciphertext B and creating a new png C out of B. The png C will have B a
a visual entity. Now, since C has the ciphertext B in it, we can decrypt
that data back into A.
Is this what you are doing?
On 1/5/2025 2:21 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/5/2025 1:24 AM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/4/2025 4:21 PM, Stefan Claas wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that
only encrypted the bitmap data of a PNG", but left the file as otherwise a proper PNG image structure, then that is slightly tricky
(and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Well, take a good ol' bag o' bytes and turn it into a valid png?
No, encrypt a .png, so that an encrypted noise image comes out.
Are you talking about encrypting something A. Taking the resulting ciphertext B and creating a new png C out of B. The png C will have B a
a visual entity. Now, since C has the ciphertext B in it, we can decrypt that data back into A.
Is this what you are doing?
I am talking about .png image encryption. I got it working for ppm (P6) files, so that when you have created with Gimp a ppm (raw) file it will then be encrypted with a password and salt and results in a noise image.
Have you not seen my online folder with the example ... ???
The PPM still needs it proper format to be a, as you say, noise image?
I have worked a lot with PPM's. Keep in mind that storing ciphertext for
any file, even the original PPM, JPG, ect, can be stored in another PPM
for sure. So, the resulting PPM will have the payload of any file,
another PPM, no problem. Then we can look at the payload as an image on
the screen.
On 1/5/2025 2:48 PM, Chris M. Thomasson wrote:
On 1/5/2025 1:10 PM, Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that only encrypted the bitmap data of a PNG", but left the file as otherwise a proper PNG image structure, then that is slightly tricky (and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized for just encrypting the internal bitmap data within
a PNG, leaving the rest as a PNG file, when a generic "byte stream" encryptor will encrypt the entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
I.e, first you put data with file2png in a .png and then encrypt it to finally post it. I can do this now with my xorpic program,
but I thought a solution with AES-GCM or XChaCha20+ploy1305 is better.
The "path" I outlined in my previous post, where you utilize the netpbm image format as your 'intermediary' would allow you to use any generic encryption routine you like, while also allowing you to convert the encrypted binary data to/from an image format of your choice (well, your choice within the set of other formats for which NetPBM has to/from converters available).
This frees you from having to understand the internal structure of the various image formats. You just work with the netpbm format (a
raw binary bit/pixel block) for the encrypt/decrypt/padding operations, and delegate all the "image format" complexity to the netpbm library.
Thank you! My ppmenc tool works nicely, here are the test images:
https://jmp.sh/HZM9ML9f
The big problem I face when converting the encryypted image to .png and back a diff shows a difference and the decryption fails.
Maybe someone can figure out what to do, so that a converted .ppm can be posted online , for viewers/readers and then can be converted back to the original .ppm, which shows no difference.
We can't read your mind over Usenet so can you show how you converted the encrypted image to a png and back.
I used Gimp with compression set to 0 and the netbmp tools.
You should write your own program for it. The Gimp altered some bytes, right?
Fwiw, the Cairo lib is fairly nice, well, to me at least... I use it a
lot for my 2d work. it allows you to gain access to the raw underlying buffer. So, I can create PNG's with payloads that are intact.
On 1/5/2025 3:06 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:[...]
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++)
and see if you can get the *original* data back. The sci.crypt community and me of course would appreciate your help very much!
Still, try this:
Upload a PNG to X and/or FB. Copy the image, download the image from
them after its up on their site. Do a file compare on it wrt your
original source PNG. Are the exactly the same?
Chris M. Thomasson wrote:
On 1/5/2025 3:06 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:[...]
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++) and see if you can get the *original* data back. The sci.crypt community and me of course would appreciate your help very much!
Still, try this:
Upload a PNG to X and/or FB. Copy the image, download the image from
them after its up on their site. Do a file compare on it wrt your
original source PNG. Are the exactly the same?
On X they are the same, once downloaded, which a 'diff' shows. ;-)
Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/5/2025 3:06 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:[...]
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++) and see if you can get the *original* data back. The sci.crypt community
and me of course would appreciate your help very much!
Still, try this:
Upload a PNG to X and/or FB. Copy the image, download the image from
them after its up on their site. Do a file compare on it wrt your original source PNG. Are the exactly the same?
On X they are the same, once downloaded, which a 'diff' shows. ;-)
BTW. I come to the conclusion that it is best to use 'age' without
the -a option and then my file2png program ... This allows one to
encrypt any kind of data and convert it as valid noise .png image,
for X and other online usage. The advantage of 'age' is that it
uses public key cryptography or symmetric encryption. Better not
to invent the wheel twice. Anyways interesting thread ... :-)
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware,
encryptor that only encrypted the bitmap data of a PNG",
but left the file as otherwise a proper PNG image
structure, then that is slightly tricky (and an algorithm
that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is
specalized for just encrypting the internal bitmap data within
a PNG, leaving the rest as a PNG file, when a generic "byte
stream" encryptor will encrypt the entire PNG with no extra
effort?
To make more content as allowed postable on social media, like
X.
I.e, first you put data with file2png in a .png and then encrypt
it to finally post it. I can do this now with my xorpic program,
but I thought a solution with AES-GCM or XChaCha20+ploy1305 is
better.
The "path" I outlined in my previous post, where you utilize the
netpbm image format as your 'intermediary' would allow you to use
any generic encryption routine you like, while also allowing you to
convert the encrypted binary data to/from an image format of your
choice (well, your choice within the set of other formats for which
NetPBM has to/from converters available).
This frees you from having to understand the internal structure of
the various image formats. You just work with the netpbm format (a
raw binary bit/pixel block) for the encrypt/decrypt/padding
operations, and delegate all the "image format" complexity to the
netpbm library.
Thank you! My ppmenc tool works nicely, here are the test images:
https://jmp.sh/HZM9ML9f
The big problem I face when converting the encryypted image to .png
and back a diff shows a difference and the decryption fails.
Maybe someone can figure out what to do, so that a converted .ppm can
be posted online , for viewers/readers and then can be converted back
to the original .ppm, which shows no difference.
We can't read your mind over Usenet so can you show how you converted
the encrypted image to a png and back.
I used Gimp with compression set to 0 and the netbmp tools.
On 1/5/2025 1:25 AM, Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that >>>>> only encrypted the bitmap data of a PNG", but left the file as
otherwise a proper PNG image structure, then that is slightly tricky >>>>> (and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized for
just encrypting the internal bitmap data within a PNG, leaving the rest
as a PNG file, when a generic "byte stream" encryptor will encrypt the
entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
Well, posting a png to say, facebook, well... It's probablly going to
turn it into a jpg... This can ruin the embedded ciphertext in the png image...
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++)
and see if you can get the *original* data back. The sci.crypt community
and me of course would appreciate your help very much!
On 1/5/2025 2:18 PM, Stefan Claas wrote:
Chris M. Thomasson wrote:
On 1/5/2025 2:06 PM, Chris M. Thomasson wrote:
On 1/5/2025 1:25 AM, Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
Rich wrote:
If instead you mean some kind of "special, PNG aware, encryptor that >>>>>>>> only encrypted the bitmap data of a PNG", but left the file as >>>>>>>> otherwise a proper PNG image structure, then that is slightly tricky >>>>>>>> (and an algorithm that is only useful for PNG's alone).
Yes, this is what I mean.
Which brings up the question of: why?
Why go to the trouble to create an encryptor that is specalized for >>>>>> just encrypting the internal bitmap data within a PNG, leaving the rest >>>>>> as a PNG file, when a generic "byte stream" encryptor will encrypt the >>>>>> entire PNG with no extra effort?
To make more content as allowed postable on social media, like X.
Well, posting a png to say, facebook, well... It's probablly going to
turn it into a jpg... This can ruin the embedded ciphertext in the png >>>> image...
Actually, the damn FB allows me to send my links with embedded
ciphertext just fine.
It is for X and not Meta.
Well, sending say a PNG to X, it still might convert it into a JPG. It
might alter things for compression purposes. This can mess around with
your payload...
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++) and see if you can get the *original* data back. The sci.crypt community and me of course would appreciate your help very much!
Since you have not "shown your work" (apologizes if you show it later,
I'm replying as I encounter articles in date order) we can't help you diagnose your problem.
So, to the extent I can tell, you are doing something wrong somewhere.
Please try your conversion steps with the encrypted image, I already
have shown:
https://jmp.sh/HZM9ML9f
It includes a padding byte, needed for ppm so that it is divideable by 3.
Stefan Claas <pollux@tilde.club> wrote:
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++)
and see if you can get the *original* data back. The sci.crypt community and me of course would appreciate your help very much!
Since you have not "shown your work" (apologizes if you show it later,
I'm replying as I encounter articles in date order) we can't help you diagnose your problem.
So, to the extent I can tell, you are doing something wrong somewhere.
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++) and see if you can get the *original* data back. The sci.crypt community
and me of course would appreciate your help very much!
Since you have not "shown your work" (apologizes if you show it later, I'm replying as I encounter articles in date order) we can't help you diagnose your problem.
So, to the extent I can tell, you are doing something wrong somewhere.
Please try your conversion steps with the encrypted image, I already
have shown:
https://jmp.sh/HZM9ML9f
It includes a padding byte, needed for ppm so that it is divideable by 3.
Welln ot true, but the paading byte causes the issue, because it gets
lost when converting.
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++)
and see if you can get the *original* data back. The sci.crypt community >> > and me of course would appreciate your help very much!
Since you have not "shown your work" (apologizes if you show it later,
I'm replying as I encounter articles in date order) we can't help you
diagnose your problem.
So, to the extent I can tell, you are doing something wrong somewhere.
Please try your conversion steps with the encrypted image, I already
have shown:
https://jmp.sh/HZM9ML9f
It includes a padding byte, needed for ppm so that it is divideable by 3.
Stefan Claas wrote:
Rich wrote:
Stefan Claas <pollux@tilde.club> wrote:
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++) >> > > and see if you can get the *original* data back. The sci.crypt community >> > > and me of course would appreciate your help very much!
Since you have not "shown your work" (apologizes if you show it later,
I'm replying as I encounter articles in date order) we can't help you
diagnose your problem.
So, to the extent I can tell, you are doing something wrong somewhere.
Please try your conversion steps with the encrypted image, I already
have shown:
https://jmp.sh/HZM9ML9f
It includes a padding byte, needed for ppm so that it is divideable by 3.
Welln ot true, but the paading byte causes the issue, because it gets
lost when converting.
Stefan Claas wrote:
Stefan Claas wrote:
Rich wrote:Welln ot true, but the paading byte causes the issue, because it gets
Stefan Claas <pollux@tilde.club> wrote:Please try your conversion steps with the encrypted image, I already
*Please* try to write a .ppm (P6) to .png converter (and back) in C(++)
and see if you can get the *original* data back. The sci.crypt community
and me of course would appreciate your help very much!
Since you have not "shown your work" (apologizes if you show it later, >> > > I'm replying as I encounter articles in date order) we can't help you
diagnose your problem.
So, to the extent I can tell, you are doing something wrong somewhere. >> >
have shown:
https://jmp.sh/HZM9ML9f
It includes a padding byte, needed for ppm so that it is divideable by 3. >>
lost when converting.
I will use encryption and then file2png, which makes the noise image
smaller in size, compared to the original image.
https://github.com/706f6c6c7578/file2png