Re: how do I hide a variable from viewing
[email protected] (ToddAndMargo via perl6-users) Tue, 20 May 2025 22:10:06 -0700
| Newsgroups | perl.perl6.users |
|---|---|
| Message-ID | <[email protected]> |
>> *From:* ToddAndMargo via perl6-users <[email protected]> >> *Sent:* Tuesday, May 20, 2025 5:29 AM >> *To:* perl6-users <[email protected]> >> *Subject:* how do I hide a variable from viewing >> Hi All, >> >> Fedora 41 (Linux) >> >> Since my *.raku can be publicly read, how do I obscure >> the contents of a variable so other can not read it? >> >> Currently what I have been doing is setting the file's >> ownership to root:root and the attributes to 700 so >> only root can see it. >> >> I would be nice to obscure a variable inside the >> program though. >> >> Many thanks, >> -T >> On 5/20/25 4:44 AM, Mark Devine wrote: > Todd, > > I got tired of having clear-text passwords and other sensitive strings > in my raku scripts, so I wrote KHPH for myself for use on Linux/UNIX, > then published it. The idea catches criticism because it isn't > encryption, but rather just a little obfuscation. Sometimes a little > obfuscation is warranted, imo. > > It takes a string, then mangles it into an unrecognizable scrambled > form, stashes it in a file, then can be recalled/unscrambled later. > > https://github.com/markldevine/raku-KHPH <https://github.com/ > markldevine/raku-KHPH> > <https://github.com/markldevine/raku-KHPH> > > markldevine/raku-KHPH: Keep Honest People Honest - GitHub <https:// > github.com/markldevine/raku-KHPH> > Keep Honest People Honest - String Obfuscation, Storage, & Retrieval - > markldevine/raku-KHPH > github.com > > Maybe you'll find it useful, but maybe only on Linux/UNIX. > > use KHPH; KHPH.new(:stash-path('/tmp/.myapp/password.khph')).expose.print; > > * > or - > > > use KHPH; > my $passowrd = KHPH.new(:stash-path($*HOME ~ '/.rakucache/myapp/ > password.khph')); > # $password.expose will unscramble the string, so you can substitute it > where you need to > > Thanks, > > Mark Devine > 202-878-1500 Hi Mark, I have written something similar. Without the seed and the start point, it is (although never say never) impossible to decrypt it. My issue is, unlike a fully compiled code, if a bad guy has access to my Raku code, which is necessary to run the program, he also has access to the seed and the start point, plus the encryption and decryption module. I was thinking maybe there is a way to only present the binary of my code, like a fully compiled code? Or maybe some way to obscure something inside my Raku code? Thank you for the help! -T