covert perl code to binary

--00000000000007f785057f2bc0ea
Content-Type: text/plain; charset="UTF-8"

Hi all,

I have a perl code which I need to covert to binary so that nobody can see
the code.

we used pp package to make the perl code binary but here the user can see
the code which gets created in tmp.

Need help if anybody knows kindly reply

With regards
Uday V G

--00000000000007f785057f2bc0ea
Content-Type: text/html; charset="UTF-8"

<p dir="ltr">Hi all,</p>
<p dir="ltr">I have a perl code which I need to covert to binary so that nobody can see the code.</p>
<p dir="ltr">we used pp package to make the perl code binary but here the user can see the code which gets created in tmp.</p>
<p dir="ltr">Need help if anybody knows kindly reply</p>
<p dir="ltr">With regards<br>
Uday V G</p>

--00000000000007f785057f2bc0ea--
0
vernekaruday
1/11/2019 9:59:23 AM
perl.beginners 29338 articles. 3 followers. Follow

14 Replies
84 Views

Similar Articles

[PageSpeed] 58

Hi Uday,

On Fri, 11 Jan 2019 15:29:23 +0530
Uday Vernekar <vernekaruday@gmail.com> wrote:

> Hi all,
>=20
> I have a perl code which I need to covert to binary so that nobody can see
> the code.
>=20
> we used pp package to make the perl code binary but here the user can see
> the code which gets created in tmp.
>=20
> Need help if anybody knows kindly reply
>=20

first of all, see
https://github.com/shlomif/Freenode-programming-channel-FAQ/blob/master/FAQ=
..mdwn#how-do-i-hideobscureencrypt-my-source-code-to-prevent-end-users-from-=
learning-how-it-works

(short url: https://is.gd/pLk1b2 .)

Otherwise perhaps https://metacpan.org/pod/B::C will work for you or you can
try paying a C programmer to translate the code for you (I can do that!).

> With regards
> Uday V G



--=20
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
Optimising Code for Speed - http://shlom.in/optimise

The Klingon warriors=E2=80=99 motto is =E2=80=9CIt=E2=80=99s a good day to =
die.=E2=80=9D Chuck Norris=E2=80=99s motto
is =E2=80=9CIt=E2=80=99s a good day to kill.=E2=80=9D
    =E2=80=94 http://www.shlomifish.org/humour/bits/facts/Chuck-Norris/

Please reply to list if it's a mailing list post - http://shlom.in/reply .
0
shlomif
1/11/2019 11:48:48 AM
--0000000000004da813057f2e3ea9
Content-Type: text/plain; charset="UTF-8"

Just a warning - I'm no expert on this topic, but it was such an
interesting question I decided to find out for myself :-)

I installed B::C and ran
https://metacpan.org/pod/distribution/B-C/script/perlcc.PL

It actually does the compilation - as opposed to pp which is just packaging
it - so you don't see the perl code of the source file.

Does that resolve your question?

Andrew



On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar <vernekaruday@gmail.com>
wrote:

> Hi all,
>
> I have a perl code which I need to covert to binary so that nobody can see
> the code.
>
> we used pp package to make the perl code binary but here the user can see
> the code which gets created in tmp.
>
> Need help if anybody knows kindly reply
>
> With regards
> Uday V G
>


-- 
Andrew Solomon

Perl Trainer, Geekuni http://geekuni.com/
andrew@geekuni.com // +44 7931 946 062

--0000000000004da813057f2e3ea9
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr">Just a warning - I&#39;m no expert on thi=
s topic, but it was such an interesting question I decided to find out for =
myself :-)<div><br></div><div>I installed B::C and ran=C2=A0<a href=3D"http=
s://metacpan.org/pod/distribution/B-C/script/perlcc.PL" target=3D"_blank">h=
ttps://metacpan.org/pod/distribution/B-C/script/perlcc.PL</a></div><div><br=
></div><div>It actually does the compilation - as opposed to pp which is ju=
st packaging it - so you don&#39;t see the perl code of the source file.</d=
iv><div><br></div><div>Does that resolve your=C2=A0question?</div><div><br>=
</div><div>Andrew</div><div><br></div><div><br></div></div></div><br><div c=
lass=3D"gmail_quote"><div dir=3D"ltr">On Fri, Jan 11, 2019 at 9:59 AM Uday =
Vernekar &lt;<a href=3D"mailto:vernekaruday@gmail.com" target=3D"_blank">ve=
rnekaruday@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quo=
te" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204=
);padding-left:1ex"><p dir=3D"ltr">Hi all,</p>
<p dir=3D"ltr">I have a perl code which I need to covert to binary so that =
nobody can see the code.</p>
<p dir=3D"ltr">we used pp package to make the perl code binary but here the=
 user can see the code which gets created in tmp.</p>
<p dir=3D"ltr">Need help if anybody knows kindly reply</p>
<p dir=3D"ltr">With regards<br>
Uday V G</p>
</blockquote></div><br clear=3D"all"><div><br></div>-- <br><div dir=3D"ltr"=
 class=3D"gmail-m_-1253198962503524484gmail_signature"><div dir=3D"ltr"><di=
v><div dir=3D"ltr"><div><div dir=3D"ltr">Andrew Solomon<div><span style=3D"=
font-size:12.8px"><br></span></div><div><span style=3D"font-size:12.8px">Pe=
rl Trainer, Geekuni=C2=A0</span><a href=3D"http://geekuni.com/" style=3D"fo=
nt-size:12.8px" target=3D"_blank">http://geekuni.com/</a><br></div><div><a =
href=3D"mailto:andrew@geekuni.com" target=3D"_blank">andrew@geekuni.com</a>=
 // +44 7931 946 062</div></div></div></div></div></div></div>

--0000000000004da813057f2e3ea9--
0
andrew
1/11/2019 12:57:43 PM
--0000000000003c1a80057f2e42dd
Content-Type: text/plain; charset="UTF-8"

How dumb is your "nobody"? Would Acme::Bleach do the trick? Or something
similar?

:)

On Fri, Jan 11, 2019, 5:01 AM Uday Vernekar <vernekaruday@gmail.com wrote:

> Hi all,
>
> I have a perl code which I need to covert to binary so that nobody can see
> the code.
>
> we used pp package to make the perl code binary but here the user can see
> the code which gets created in tmp.
>
> Need help if anybody knows kindly reply
>
> With regards
> Uday V G
>

--0000000000003c1a80057f2e42dd
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">How dumb is your &quot;nobody&quot;? Would Acme::Bleach d=
o the trick? Or something similar?<div dir=3D"auto"><br></div><div dir=3D"a=
uto">:)</div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr">On Fri, =
Jan 11, 2019, 5:01 AM Uday Vernekar &lt;<a href=3D"mailto:vernekaruday@gmai=
l.com">vernekaruday@gmail.com</a> wrote:<br></div><blockquote class=3D"gmai=
l_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left=
:1ex"><p dir=3D"ltr">Hi all,</p>
<p dir=3D"ltr">I have a perl code which I need to covert to binary so that =
nobody can see the code.</p>
<p dir=3D"ltr">we used pp package to make the perl code binary but here the=
 user can see the code which gets created in tmp.</p>
<p dir=3D"ltr">Need help if anybody knows kindly reply</p>
<p dir=3D"ltr">With regards<br>
Uday V G</p>
</blockquote></div>

--0000000000003c1a80057f2e42dd--
0
dcmertens
1/11/2019 12:58:08 PM
--------------A73D5BDB7887C2CC7898E7DC
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit


I could use some more explanation.

B::C is a module that you install from CPAN.
I assume I don't put Use B::C at the top of
my perl script, but instead perlcc uses it.

Is perlcc also a module?
Or is that an executable?
I think I see that it is composed of 5 files:
assemble
cc_harness
disassemble
perlcc.PL
pl2exe.pl

After installing perlcc, do I just open a command
prompt and type perlcc -o hello.exe hello.pl?

Does all this work on Windows?  My guess is Yes.


Mike


On 1/11/2019 6:57 AM, Andrew Solomon wrote:
> Just a warning - I'm no expert on this topic, but it was such an 
> interesting question I decided to find out for myself :-)
>
> I installed B::C and ran 
> https://metacpan.org/pod/distribution/B-C/script/perlcc.PL
>
> It actually does the compilation - as opposed to pp which is just 
> packaging it - so you don't see the perl code of the source file.
>
> Does that resolve your question?
>
> Andrew
>
>
>
> On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar <vernekaruday@gmail.com 
> <mailto:vernekaruday@gmail.com>> wrote:
>
>     Hi all,
>
>     I have a perl code which I need to covert to binary so that nobody
>     can see the code.
>
>     we used pp package to make the perl code binary but here the user
>     can see the code which gets created in tmp.
>
>     Need help if anybody knows kindly reply
>
>     With regards
>     Uday V G
>
>
>
> -- 
> Andrew Solomon
>
> Perl Trainer, Geekuni http://geekuni.com/
> andrew@geekuni.com <mailto:andrew@geekuni.com> // +44 7931 946 062


--------------A73D5BDB7887C2CC7898E7DC
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <br>
    I could use some more explanation.<br>
    <br>
    B::C is a module that you install from CPAN.<br>
    I assume I don't put Use B::C at the top of <br>
    my perl script, but instead perlcc uses it.<br>
    <br>
    Is perlcc also a module?<br>
    Or is that an executable?<br>
    I think I see that it is composed of 5 files:<br>
    assemble<br>
    cc_harness<br>
    disassemble<br>
    perlcc.PL<br>
    pl2exe.pl<br>
    <br>
    After installing perlcc, do I just open a command <br>
    prompt and type perlcc -o hello.exe hello.pl?<br>
    <br>
    Does all this work on Windows?  My guess is Yes.<br>
    <br>
    <br>
    Mike<br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 1/11/2019 6:57 AM, Andrew Solomon
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAN=twKsYinzU6sfx8-yjm3rzOLf5Oq2+TRPPA72_zbNsV3i2Sg@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div dir="ltr">Just a warning - I'm no expert on this topic, but
          it was such an interesting question I decided to find out for
          myself :-)
          <div><br>
          </div>
          <div>I installed B::C and ran <a
              href="https://metacpan.org/pod/distribution/B-C/script/perlcc.PL"
              target="_blank" moz-do-not-send="true">https://metacpan.org/pod/distribution/B-C/script/perlcc.PL</a></div>
          <div><br>
          </div>
          <div>It actually does the compilation - as opposed to pp which
            is just packaging it - so you don't see the perl code of the
            source file.</div>
          <div><br>
          </div>
          <div>Does that resolve your question?</div>
          <div><br>
          </div>
          <div>Andrew</div>
          <div><br>
          </div>
          <div><br>
          </div>
        </div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr">On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar
          &lt;<a href="mailto:vernekaruday@gmail.com" target="_blank"
            moz-do-not-send="true">vernekaruday@gmail.com</a>&gt; wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <p dir="ltr">Hi all,</p>
          <p dir="ltr">I have a perl code which I need to covert to
            binary so that nobody can see the code.</p>
          <p dir="ltr">we used pp package to make the perl code binary
            but here the user can see the code which gets created in
            tmp.</p>
          <p dir="ltr">Need help if anybody knows kindly reply</p>
          <p dir="ltr">With regards<br>
            Uday V G</p>
        </blockquote>
      </div>
      <br clear="all">
      <div><br>
      </div>
      -- <br>
      <div dir="ltr" class="gmail-m_-1253198962503524484gmail_signature">
        <div dir="ltr">
          <div>
            <div dir="ltr">
              <div>
                <div dir="ltr">Andrew Solomon
                  <div><span style="font-size:12.8px"><br>
                    </span></div>
                  <div><span style="font-size:12.8px">Perl Trainer,
                      Geekuni </span><a href="http://geekuni.com/"
                      style="font-size:12.8px" target="_blank"
                      moz-do-not-send="true">http://geekuni.com/</a><br>
                  </div>
                  <div><a href="mailto:andrew@geekuni.com"
                      target="_blank" moz-do-not-send="true">andrew@geekuni.com</a>
                    // +44 7931 946 062</div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>

--------------A73D5BDB7887C2CC7898E7DC--
0
mikeflan
1/11/2019 1:37:30 PM
--0000000000005cd5c7057f2fddc1
Content-Type: text/plain; charset="UTF-8"

Sorry Mike, I was a bit too terse!

Here's what I did on a mac OS X 10.13.6 containing perl-5.26.1 installed
with perlbrew.

cpanm -n B::C

where -n means 'no test' because the first time I tried it the testing
failed and I wasn't curious enough to work out what went wrong :-)

Then I had a file foo.pl which was executable and contained:

#!/usr/bin/env perl
use 5.26.1;

say "Hello, world.";
say "Hello, world.";
say "Hello, world.";
say "Hello, world.";
say "Hello, world.";
say "Hello, world.";
say "Hello, world.";
say "Hello, world.";

I then ran

perlcc foo.pl

and found a file  "foo".

I ran
../foo
and its output was the same as
../foo.pl

Opening foo, I found the string 'Hello, world.' but only once amongst a lot
of control characters and error messages.

I'm afraid I don't have a Windows box to experiment with.

Andrew

On Fri, Jan 11, 2019 at 1:37 PM Mike Flannigan <mikeflan@att.net> wrote:

>
> I could use some more explanation.
>
> B::C is a module that you install from CPAN.
> I assume I don't put Use B::C at the top of
> my perl script, but instead perlcc uses it.
>
> Is perlcc also a module?
> Or is that an executable?
> I think I see that it is composed of 5 files:
> assemble
> cc_harness
> disassemble
> perlcc.PL
> pl2exe.pl
>
> After installing perlcc, do I just open a command
> prompt and type perlcc -o hello.exe hello.pl?
>
> Does all this work on Windows?  My guess is Yes.
>
>
> Mike
>
>
> On 1/11/2019 6:57 AM, Andrew Solomon wrote:
>
> Just a warning - I'm no expert on this topic, but it was such an
> interesting question I decided to find out for myself :-)
>
> I installed B::C and ran
> https://metacpan.org/pod/distribution/B-C/script/perlcc.PL
>
> It actually does the compilation - as opposed to pp which is just
> packaging it - so you don't see the perl code of the source file.
>
> Does that resolve your question?
>
> Andrew
>
>
>
> On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar <vernekaruday@gmail.com>
> wrote:
>
>> Hi all,
>>
>> I have a perl code which I need to covert to binary so that nobody can
>> see the code.
>>
>> we used pp package to make the perl code binary but here the user can see
>> the code which gets created in tmp.
>>
>> Need help if anybody knows kindly reply
>>
>> With regards
>> Uday V G
>>
>
>
> --
> Andrew Solomon
>
> Perl Trainer, Geekuni http://geekuni.com/
> andrew@geekuni.com // +44 7931 946 062
>
>
>

-- 
Andrew Solomon

Perl Trainer, Geekuni http://geekuni.com/
andrew@geekuni.com // +44 7931 946 062

--0000000000005cd5c7057f2fddc1
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div dir=3D"ltr"><div di=
r=3D"ltr">Sorry Mike, I was a bit too terse!<div><br></div><div>Here&#39;s =
what I did on a mac OS X 10.13.6 containing perl-5.26.1 installed with perl=
brew.</div><div><br></div><div>cpanm -n B::C</div><div><br></div><div>where=
 -n means &#39;no test&#39; because the first time I tried it the testing f=
ailed and I wasn&#39;t curious enough to work out what went=C2=A0wrong :-)<=
/div><div><br></div><div>Then I had a file <a href=3D"http://foo.pl">foo.pl=
</a> which was executable and contained:</div><div><br></div><div><div>#!/u=
sr/bin/env perl</div><div>use 5.26.1;</div><div><br></div><div>say &quot;He=
llo, world.&quot;;</div><div>say &quot;Hello, world.&quot;;</div><div>say &=
quot;Hello, world.&quot;;</div><div>say &quot;Hello, world.&quot;;</div><di=
v>say &quot;Hello, world.&quot;;</div><div>say &quot;Hello, world.&quot;;</=
div><div>say &quot;Hello, world.&quot;;</div><div>say &quot;Hello, world.&q=
uot;;</div></div><div><br></div><div>I then ran</div><div><br></div><div>pe=
rlcc <a href=3D"http://foo.pl">foo.pl</a><br></div><div><br></div><div>and =
found a file=C2=A0 &quot;foo&quot;.</div><div><br></div><div>I ran=C2=A0</d=
iv><div>./foo</div><div>and its output was the same as</div><div>./<a href=
=3D"http://foo.pl">foo.pl</a></div><div><br></div><div>Opening foo, I found=
 the string &#39;Hello, world.&#39; but only once amongst a lot of control =
characters and error messages.</div><div><br></div><div>I&#39;m afraid I do=
n&#39;t have a Windows box to experiment with.</div><div><br></div><div>And=
rew</div></div></div></div></div></div><br><div class=3D"gmail_quote"><div =
dir=3D"ltr">On Fri, Jan 11, 2019 at 1:37 PM Mike Flannigan &lt;<a href=3D"m=
ailto:mikeflan@att.net">mikeflan@att.net</a>&gt; wrote:<br></div><blockquot=
e class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px s=
olid rgb(204,204,204);padding-left:1ex">
 =20
   =20
 =20
  <div bgcolor=3D"#FFFFFF">
    <br>
    I could use some more explanation.<br>
    <br>
    B::C is a module that you install from CPAN.<br>
    I assume I don&#39;t put Use B::C at the top of <br>
    my perl script, but instead perlcc uses it.<br>
    <br>
    Is perlcc also a module?<br>
    Or is that an executable?<br>
    I think I see that it is composed of 5 files:<br>
    assemble<br>
    cc_harness<br>
    disassemble<br>
    perlcc.PL<br>
    <a href=3D"http://pl2exe.pl" target=3D"_blank">pl2exe.pl</a><br>
    <br>
    After installing perlcc, do I just open a command <br>
    prompt and type perlcc -o hello.exe <a href=3D"http://hello.pl" target=
=3D"_blank">hello.pl</a>?<br>
    <br>
    Does all this work on Windows?=C2=A0 My guess is Yes.<br>
    <br>
    <br>
    Mike<br>
    <br>
    <br>
    <div class=3D"gmail-m_-1146668475885185991moz-cite-prefix">On 1/11/2019=
 6:57 AM, Andrew Solomon
      wrote:<br>
    </div>
    <blockquote type=3D"cite">
     =20
      <div dir=3D"ltr">
        <div dir=3D"ltr">Just a warning - I&#39;m no expert on this topic, =
but
          it was such an interesting question I decided to find out for
          myself :-)
          <div><br>
          </div>
          <div>I installed B::C and ran=C2=A0<a href=3D"https://metacpan.or=
g/pod/distribution/B-C/script/perlcc.PL" target=3D"_blank">https://metacpan=
..org/pod/distribution/B-C/script/perlcc.PL</a></div>
          <div><br>
          </div>
          <div>It actually does the compilation - as opposed to pp which
            is just packaging it - so you don&#39;t see the perl code of th=
e
            source file.</div>
          <div><br>
          </div>
          <div>Does that resolve your=C2=A0question?</div>
          <div><br>
          </div>
          <div>Andrew</div>
          <div><br>
          </div>
          <div><br>
          </div>
        </div>
      </div>
      <br>
      <div class=3D"gmail_quote">
        <div dir=3D"ltr">On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar
          &lt;<a href=3D"mailto:vernekaruday@gmail.com" target=3D"_blank">v=
ernekaruday@gmail.com</a>&gt; wrote:<br>
        </div>
        <blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex=
;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <p dir=3D"ltr">Hi all,</p>
          <p dir=3D"ltr">I have a perl code which I need to covert to
            binary so that nobody can see the code.</p>
          <p dir=3D"ltr">we used pp package to make the perl code binary
            but here the user can see the code which gets created in
            tmp.</p>
          <p dir=3D"ltr">Need help if anybody knows kindly reply</p>
          <p dir=3D"ltr">With regards<br>
            Uday V G</p>
        </blockquote>
      </div>
      <br clear=3D"all">
      <div><br>
      </div>
      -- <br>
      <div dir=3D"ltr" class=3D"gmail-m_-1146668475885185991gmail-m_-125319=
8962503524484gmail_signature">
        <div dir=3D"ltr">
          <div>
            <div dir=3D"ltr">
              <div>
                <div dir=3D"ltr">Andrew Solomon
                  <div><span style=3D"font-size:12.8px"><br>
                    </span></div>
                  <div><span style=3D"font-size:12.8px">Perl Trainer,
                      Geekuni=C2=A0</span><a href=3D"http://geekuni.com/" s=
tyle=3D"font-size:12.8px" target=3D"_blank">http://geekuni.com/</a><br>
                  </div>
                  <div><a href=3D"mailto:andrew@geekuni.com" target=3D"_bla=
nk">andrew@geekuni.com</a>
                    // +44 7931 946 062</div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
  </div>

</blockquote></div><br clear=3D"all"><div><br></div>-- <br><div dir=3D"ltr"=
 class=3D"gmail_signature"><div dir=3D"ltr"><div><div dir=3D"ltr"><div><div=
 dir=3D"ltr">Andrew Solomon<div><span style=3D"font-size:12.8px"><br></span=
></div><div><span style=3D"font-size:12.8px">Perl Trainer, Geekuni=C2=A0</s=
pan><a href=3D"http://geekuni.com/" style=3D"font-size:12.8px" target=3D"_b=
lank">http://geekuni.com/</a><br></div><div><a href=3D"mailto:andrew@geekun=
i.com" target=3D"_blank">andrew@geekuni.com</a> // +44 7931 946 062</div></=
div></div></div></div></div></div>

--0000000000005cd5c7057f2fddc1--
0
andrew
1/11/2019 2:53:46 PM
--------------08731D588F62DFCF8DEA6080
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit

I built it on a Linux box, it blew up so I read the README... that has 
instructions for how to do it on Windows

As noted by another poster, it seems to work in spite of the test blowing up

On 1/11/19 5:37 AM, Mike Flannigan wrote:
>
> I could use some more explanation.
>
> B::C is a module that you install from CPAN.
> I assume I don't put Use B::C at the top of
> my perl script, but instead perlcc uses it.
>
> Is perlcc also a module?
> Or is that an executable?
> I think I see that it is composed of 5 files:
> assemble
> cc_harness
> disassemble
> perlcc.PL
> pl2exe.pl
>
> After installing perlcc, do I just open a command
> prompt and type perlcc -o hello.exe hello.pl?
>
> Does all this work on Windows?  My guess is Yes.
>
>
> Mike
>
>
> On 1/11/2019 6:57 AM, Andrew Solomon wrote:
>> Just a warning - I'm no expert on this topic, but it was such an 
>> interesting question I decided to find out for myself :-)
>>
>> I installed B::C and ran 
>> https://metacpan.org/pod/distribution/B-C/script/perlcc.PL
>>
>> It actually does the compilation - as opposed to pp which is just 
>> packaging it - so you don't see the perl code of the source file.
>>
>> Does that resolve your question?
>>
>> Andrew
>>
>>
>>
>> On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar <vernekaruday@gmail.com 
>> <mailto:vernekaruday@gmail.com>> wrote:
>>
>>     Hi all,
>>
>>     I have a perl code which I need to covert to binary so that
>>     nobody can see the code.
>>
>>     we used pp package to make the perl code binary but here the user
>>     can see the code which gets created in tmp.
>>
>>     Need help if anybody knows kindly reply
>>
>>     With regards
>>     Uday V G
>>
>>
>>
>> -- 
>> Andrew Solomon
>>
>> Perl Trainer, Geekuni http://geekuni.com/
>> andrew@geekuni.com <mailto:andrew@geekuni.com> // +44 7931 946 062
>


--------------08731D588F62DFCF8DEA6080
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    I built it on a Linux box, it blew up so I read the README... that
    has instructions for how to do it on Windows<br>
    <br>
    As noted by another poster, it seems to work in spite of the test
    blowing up<br>
    <br>
    <div class="moz-cite-prefix">On 1/11/19 5:37 AM, Mike Flannigan
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:3a0feb0b-c201-59df-3409-2d27caf38ece@att.net">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <br>
      I could use some more explanation.<br>
      <br>
      B::C is a module that you install from CPAN.<br>
      I assume I don't put Use B::C at the top of <br>
      my perl script, but instead perlcc uses it.<br>
      <br>
      Is perlcc also a module?<br>
      Or is that an executable?<br>
      I think I see that it is composed of 5 files:<br>
      assemble<br>
      cc_harness<br>
      disassemble<br>
      perlcc.PL<br>
      pl2exe.pl<br>
      <br>
      After installing perlcc, do I just open a command <br>
      prompt and type perlcc -o hello.exe hello.pl?<br>
      <br>
      Does all this work on Windows?  My guess is Yes.<br>
      <br>
      <br>
      Mike<br>
      <br>
      <br>
      <div class="moz-cite-prefix">On 1/11/2019 6:57 AM, Andrew Solomon
        wrote:<br>
      </div>
      <blockquote type="cite"
cite="mid:CAN=twKsYinzU6sfx8-yjm3rzOLf5Oq2+TRPPA72_zbNsV3i2Sg@mail.gmail.com">
        <meta http-equiv="content-type" content="text/html;
          charset=UTF-8">
        <div dir="ltr">
          <div dir="ltr">Just a warning - I'm no expert on this topic,
            but it was such an interesting question I decided to find
            out for myself :-)
            <div><br>
            </div>
            <div>I installed B::C and ran <a
                href="https://metacpan.org/pod/distribution/B-C/script/perlcc.PL"
                target="_blank" moz-do-not-send="true">https://metacpan.org/pod/distribution/B-C/script/perlcc.PL</a></div>
            <div><br>
            </div>
            <div>It actually does the compilation - as opposed to pp
              which is just packaging it - so you don't see the perl
              code of the source file.</div>
            <div><br>
            </div>
            <div>Does that resolve your question?</div>
            <div><br>
            </div>
            <div>Andrew</div>
            <div><br>
            </div>
            <div><br>
            </div>
          </div>
        </div>
        <br>
        <div class="gmail_quote">
          <div dir="ltr">On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar
            &lt;<a href="mailto:vernekaruday@gmail.com" target="_blank"
              moz-do-not-send="true">vernekaruday@gmail.com</a>&gt;
            wrote:<br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px
            0.8ex;border-left:1px solid
            rgb(204,204,204);padding-left:1ex">
            <p dir="ltr">Hi all,</p>
            <p dir="ltr">I have a perl code which I need to covert to
              binary so that nobody can see the code.</p>
            <p dir="ltr">we used pp package to make the perl code binary
              but here the user can see the code which gets created in
              tmp.</p>
            <p dir="ltr">Need help if anybody knows kindly reply</p>
            <p dir="ltr">With regards<br>
              Uday V G</p>
          </blockquote>
        </div>
        <br clear="all">
        <div><br>
        </div>
        -- <br>
        <div dir="ltr"
          class="gmail-m_-1253198962503524484gmail_signature">
          <div dir="ltr">
            <div>
              <div dir="ltr">
                <div>
                  <div dir="ltr">Andrew Solomon
                    <div><span style="font-size:12.8px"><br>
                      </span></div>
                    <div><span style="font-size:12.8px">Perl Trainer,
                        Geekuni </span><a href="http://geekuni.com/"
                        style="font-size:12.8px" target="_blank"
                        moz-do-not-send="true">http://geekuni.com/</a><br>
                    </div>
                    <div><a href="mailto:andrew@geekuni.com"
                        target="_blank" moz-do-not-send="true">andrew@geekuni.com</a>
                      // +44 7931 946 062</div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>

--------------08731D588F62DFCF8DEA6080--
0
bferrell
1/11/2019 3:28:37 PM
--------------A3C263ECC4FBABAFD29C7C1F
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit


Thanks.  On Windows I did 'cpan install B::C'
and it went on and on with many test fails.
After about 3 minutes it threw a 'Perl interpreter
has stopped working' error (details below) and when
I closed that box it continued with the test fails
for another 3+ minutes and then stopped (it was probably
still running - I did a Ctrl C on it).  One little
item I picked out is
ExtUtils::Install  generates non-zero binary'

So then I did 'cpan install -n B::C' and that also
ran about 5 minutes with test fails and threw a
'Perl interpreter has stopped working' error.  When
I closed that box it continued with the test fails
for another 5+ minutes (I took a shower in here) and
then slowed down on statements like


#   Failed test '6: use Pod::Perldoc -O3 gives expected 'ok' outpu
#   at t/modules.t line 227.
#                   ''
#     doesn't match '(?^ms:ok$)'

The install still running, but I think it is safe to say
it does not install real good on Strawberry Perl.



Mike



Problem Event Name:    APPCRASH
   Application Name:    perl.exe
   Application Version:    5.26.1.1
   Application Timestamp:    59c72b89
   Fault Module Name:    ntdll.dll
   Fault Module Version:    6.1.7601.24335
   Fault Module Timestamp:    5c268115
   Exception Code:    c0000005
   Exception Offset:    000000000002a407
   OS Version:    6.1.7601.2.1.0.256.48
   Locale ID:    1033
   Additional Information 1:    62e2
   Additional Information 2:    62e210e3d23b68abf45108a88f3afb70
   Additional Information 3:    2f51
   Additional Information 4:    2f51a0ca5e5e9ac099301d839e2f4ce3



On 1/11/2019 8:53 AM, Andrew Solomon wrote:
> Sorry Mike, I was a bit too terse!
>
> Here's what I did on a mac OS X 10.13.6 containing perl-5.26.1 
> installed with perlbrew.
>
> cpanm -n B::C
>
> where -n means 'no test' because the first time I tried it the testing 
> failed and I wasn't curious enough to work out what went wrong :-)
>
> Then I had a file foo.pl <http://foo.pl> which was executable and 
> contained:
>
> #!/usr/bin/env perl
> use 5.26.1;
>
> say "Hello, world.";
> say "Hello, world.";
> say "Hello, world.";
> say "Hello, world.";
> say "Hello, world.";
> say "Hello, world.";
> say "Hello, world.";
> say "Hello, world.";
>
> I then ran
>
> perlcc foo.pl <http://foo.pl>
>
> and found a file  "foo".
>
> I ran
> ./foo
> and its output was the same as
> ./foo.pl <http://foo.pl>
>
> Opening foo, I found the string 'Hello, world.' but only once amongst 
> a lot of control characters and error messages.
>
> I'm afraid I don't have a Windows box to experiment with.
>
> Andrew
>
> On Fri, Jan 11, 2019 at 1:37 PM Mike Flannigan <mikeflan@att.net 
> <mailto:mikeflan@att.net>> wrote:
>
>
>     I could use some more explanation.
>
>     B::C is a module that you install from CPAN.
>     I assume I don't put Use B::C at the top of
>     my perl script, but instead perlcc uses it.
>
>     Is perlcc also a module?
>     Or is that an executable?
>     I think I see that it is composed of 5 files:
>     assemble
>     cc_harness
>     disassemble
>     perlcc.PL
>     pl2exe.pl <http://pl2exe.pl>
>
>     After installing perlcc, do I just open a command
>     prompt and type perlcc -o hello.exe hello.pl <http://hello.pl>?
>
>     Does all this work on Windows?  My guess is Yes.
>
>
>     Mike
>


--------------A3C263ECC4FBABAFD29C7C1F
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <br>
    Thanks.  On Windows I did 'cpan install B::C' <br>
    and it went on and on with many test fails.  <br>
    After about 3 minutes it threw a 'Perl interpreter <br>
    has stopped working' error (details below) and when <br>
    I closed that box it continued with the test fails <br>
    for another 3+ minutes and then stopped (it was probably <br>
    still running - I did a Ctrl C on it).  One little <br>
    item I picked out is<br>
    ExtUtils::Install  generates non-zero binary'<br>
    <br>
    So then I did 'cpan install -n B::C' and that also <br>
    ran about 5 minutes with test fails and threw a <br>
    'Perl interpreter has stopped working' error.  When <br>
    I closed that box it continued with the test fails <br>
    for another 5+ minutes (I took a shower in here) and <br>
    then slowed down on statements like<br>
    <br>
    <br>
    #   Failed test '6: use Pod::Perldoc -O3 gives expected 'ok' outpu<br>
    #   at t/modules.t line 227.<br>
    #                   ''<br>
    #     doesn't match '(?^ms:ok$)'<br>
    <br>
    The install still running, but I think it is safe to say <br>
    it does not install real good on Strawberry Perl.<br>
    <br>
    <br>
    <br>
    Mike<br>
    <br>
    <br>
    <br>
    Problem Event Name:    APPCRASH<br>
      Application Name:    perl.exe<br>
      Application Version:    5.26.1.1<br>
      Application Timestamp:    59c72b89<br>
      Fault Module Name:    ntdll.dll<br>
      Fault Module Version:    6.1.7601.24335<br>
      Fault Module Timestamp:    5c268115<br>
      Exception Code:    c0000005<br>
      Exception Offset:    000000000002a407<br>
      OS Version:    6.1.7601.2.1.0.256.48<br>
      Locale ID:    1033<br>
      Additional Information 1:    62e2<br>
      Additional Information 2:    62e210e3d23b68abf45108a88f3afb70<br>
      Additional Information 3:    2f51<br>
      Additional Information 4:    2f51a0ca5e5e9ac099301d839e2f4ce3<br>
    <br>
    <br>
    <br>
    <div class="moz-cite-prefix">On 1/11/2019 8:53 AM, Andrew Solomon
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAN=twKuUMF5KF9CHZAtPAD7VHsrsAFGmJ3JEw9zBiWgypWgNMA@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div dir="ltr">
          <div dir="ltr">
            <div dir="ltr">
              <div dir="ltr">Sorry Mike, I was a bit too terse!
                <div><br>
                </div>
                <div>Here's what I did on a mac OS X 10.13.6 containing
                  perl-5.26.1 installed with perlbrew.</div>
                <div><br>
                </div>
                <div>cpanm -n B::C</div>
                <div><br>
                </div>
                <div>where -n means 'no test' because the first time I
                  tried it the testing failed and I wasn't curious
                  enough to work out what went wrong :-)</div>
                <div><br>
                </div>
                <div>Then I had a file <a href="http://foo.pl"
                    moz-do-not-send="true">foo.pl</a> which was
                  executable and contained:</div>
                <div><br>
                </div>
                <div>
                  <div>#!/usr/bin/env perl</div>
                  <div>use 5.26.1;</div>
                  <div><br>
                  </div>
                  <div>say "Hello, world.";</div>
                  <div>say "Hello, world.";</div>
                  <div>say "Hello, world.";</div>
                  <div>say "Hello, world.";</div>
                  <div>say "Hello, world.";</div>
                  <div>say "Hello, world.";</div>
                  <div>say "Hello, world.";</div>
                  <div>say "Hello, world.";</div>
                </div>
                <div><br>
                </div>
                <div>I then ran</div>
                <div><br>
                </div>
                <div>perlcc <a href="http://foo.pl"
                    moz-do-not-send="true">foo.pl</a><br>
                </div>
                <div><br>
                </div>
                <div>and found a file  "foo".</div>
                <div><br>
                </div>
                <div>I ran </div>
                <div>./foo</div>
                <div>and its output was the same as</div>
                <div>./<a href="http://foo.pl" moz-do-not-send="true">foo.pl</a></div>
                <div><br>
                </div>
                <div>Opening foo, I found the string 'Hello, world.' but
                  only once amongst a lot of control characters and
                  error messages.</div>
                <div><br>
                </div>
                <div>I'm afraid I don't have a Windows box to experiment
                  with.</div>
                <div><br>
                </div>
                <div>Andrew</div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr">On Fri, Jan 11, 2019 at 1:37 PM Mike Flannigan
          &lt;<a href="mailto:mikeflan@att.net" moz-do-not-send="true">mikeflan@att.net</a>&gt;
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
          0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div bgcolor="#FFFFFF"> <br>
            I could use some more explanation.<br>
            <br>
            B::C is a module that you install from CPAN.<br>
            I assume I don't put Use B::C at the top of <br>
            my perl script, but instead perlcc uses it.<br>
            <br>
            Is perlcc also a module?<br>
            Or is that an executable?<br>
            I think I see that it is composed of 5 files:<br>
            assemble<br>
            cc_harness<br>
            disassemble<br>
            perlcc.PL<br>
            <a href="http://pl2exe.pl" target="_blank"
              moz-do-not-send="true">pl2exe.pl</a><br>
            <br>
            After installing perlcc, do I just open a command <br>
            prompt and type perlcc -o hello.exe <a
              href="http://hello.pl" target="_blank"
              moz-do-not-send="true">hello.pl</a>?<br>
            <br>
            Does all this work on Windows?  My guess is Yes.<br>
            <br>
            <br>
            Mike<br>
            <br>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <br>
  </body>
</html>

--------------A3C263ECC4FBABAFD29C7C1F--
0
mikeflan
1/11/2019 3:50:49 PM
--------------3EFA5643DDA5BC43E491A6A0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit


Thanks.

My Strawberry install finally failed with
Stopping: 'install' failed for 'B::C'.

I am running ver 5.26 of Strawberry.



I suspect you mean this Readme file:

|INSTALL|
|cpan B::C|
|On strawberry I needed|
|||perl Makefile.PL FIXIN="perl -S pl2bat.bat"|
|On Windows and AIX for 5.12 and 5.14 you need to patch and rebuild CORE 
perl:|
|||ramblings/Export-store_cop_label-for-the-perl-compiler.patch|
|For 5.14 and 5.15 I recommend also the following patches:|
|||ramblings/revert-B-load-BEGIN.patch (The 5.14.1 version)|
|||ramblings/Carp-wo-B.patch|
|We generally discourage the use of perl since 5.16 unhandled and|
|unacknowledged security problems with the implementation of "unicode"|
|symbols and packagenames, where they really implemented binary names|
|for all symbols without any checks and further support of such binary|
|names. Identifiers are not identifiable anymore.|
|See the warning at perl Makefile.PL.|
|5.20 improved support for binary names for most syscalls, dumpers and|
|APIs, but TR39 and strict names are still not handled, the problems|
|are not understood and reactions are generally hostile.|
|5.18 made it 20% bigger with the implementation of COW strings.|
|Most strings cannot be stored statically anymore since then.|
|The best perl versions for the compiler are 5.14.4, 5.22.1 and cperl,|
|since these are the most tested versions, where the coretest suite 
passes. The above is only part of the Readme file. I'm not sure what to 
make of that. Especially that part that says: 'We generally discourage 
the use of perl since 5.16 unhandled and unacknowledged security 
problems' Mike |



On 1/11/2019 9:28 AM, Bruce Ferrell wrote:
> I built it on a Linux box, it blew up so I read the README... that has 
> instructions for how to do it on Windows
>
> As noted by another poster, it seems to work in spite of the test 
> blowing up
>
> On 1/11/19 5:37 AM, Mike Flannigan wrote:
>>
>> I could use some more explanation.
>>
>> B::C is a module that you install from CPAN.
>> I assume I don't put Use B::C at the top of
>> my perl script, but instead perlcc uses it.
>>
>> Is perlcc also a module?
>> Or is that an executable?
>> I think I see that it is composed of 5 files:
>> assemble
>> cc_harness
>> disassemble
>> perlcc.PL
>> pl2exe.pl
>>
>> After installing perlcc, do I just open a command
>> prompt and type perlcc -o hello.exe hello.pl?
>>
>> Does all this work on Windows?  My guess is Yes.
>>
>>
>> Mike
>>
>>
>> On 1/11/2019 6:57 AM, Andrew Solomon wrote:
>>> Just a warning - I'm no expert on this topic, but it was such an 
>>> interesting question I decided to find out for myself :-)
>>>
>>> I installed B::C and ran 
>>> https://metacpan.org/pod/distribution/B-C/script/perlcc.PL
>>>
>>> It actually does the compilation - as opposed to pp which is just 
>>> packaging it - so you don't see the perl code of the source file.
>>>
>>> Does that resolve your question?
>>>
>>> Andrew
>>>
>>>
>>>
>>> On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar 
>>> <vernekaruday@gmail.com <mailto:vernekaruday@gmail.com>> wrote:
>>>
>>>     Hi all,
>>>
>>>     I have a perl code which I need to covert to binary so that
>>>     nobody can see the code.
>>>
>>>     we used pp package to make the perl code binary but here the
>>>     user can see the code which gets created in tmp.
>>>
>>>     Need help if anybody knows kindly reply
>>>
>>>     With regards
>>>     Uday V G
>>>
>>>
>>>
>>> -- 
>>> Andrew Solomon
>>>
>>> Perl Trainer, Geekuni http://geekuni.com/
>>> andrew@geekuni.com <mailto:andrew@geekuni.com> // +44 7931 946 062
>>
>


--------------3EFA5643DDA5BC43E491A6A0
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: base64

PGh0bWw+DQogIDxoZWFkPg0KICAgIDxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg
Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PVVURi04Ij4NCiAgPC9oZWFkPg0KICA8Ym9k
eSB0ZXh0PSIjMDAwMDAwIiBiZ2NvbG9yPSIjRkZGRkZGIj4NCiAgICA8YnI+DQogICAgVGhh
bmtzLjxicj4NCiAgICA8YnI+DQogICAgTXkgU3RyYXdiZXJyeSBpbnN0YWxsIGZpbmFsbHkg
ZmFpbGVkIHdpdGg8YnI+DQogICAgU3RvcHBpbmc6ICdpbnN0YWxsJyBmYWlsZWQgZm9yICdC
OjpDJy48YnI+DQogICAgPGJyPg0KICAgIEkgYW0gcnVubmluZyB2ZXIgNS4yNiBvZiBTdHJh
d2JlcnJ5Ljxicj4NCiAgICA8YnI+DQogICAgPGJyPg0KICAgIDxicj4NCiAgICBJIHN1c3Bl
Y3QgeW91IG1lYW4gdGhpcyBSZWFkbWUgZmlsZTo8YnI+DQogICAgPHByZSBpZD0ic291cmNl
IiBjbGFzcz0ibGluZS1udW1iZXJzIHBvZC10b2dnbGUgcG9kLWhpZGRlbiIgZGF0YS1wb2Qt
bGluZXM9IiI+PGRpdiBjbGFzcz0ibGluZSBudW1iZXI1MCBpbmRleDQ5IGFsdDEiPjxjb2Rl
IGNsYXNzPSJwbGFpbiBwbGFpbiI+SU5TVEFMTDwvY29kZT48L2Rpdj48ZGl2IGNsYXNzPSJs
aW5lIG51bWJlcjUxIGluZGV4NTAgYWx0MiI+wqA8L2Rpdj48ZGl2IGNsYXNzPSJsaW5lIG51
bWJlcjUyIGluZGV4NTEgYWx0MSI+PGNvZGUgY2xhc3M9InBsYWluIHBsYWluIj5jcGFuIEI6
OkM8L2NvZGU+PC9kaXY+PGRpdiBjbGFzcz0ibGluZSBudW1iZXI1MyBpbmRleDUyIGFsdDIi
PsKgPC9kaXY+PGRpdiBjbGFzcz0ibGluZSBudW1iZXI1NCBpbmRleDUzIGFsdDEiPjxjb2Rl
IGNsYXNzPSJwbGFpbiBwbGFpbiI+T24gc3RyYXdiZXJyeSBJIG5lZWRlZDwvY29kZT48L2Rp
dj48ZGl2IGNsYXNzPSJsaW5lIG51bWJlcjU1IGluZGV4NTQgYWx0MiI+PGNvZGUgY2xhc3M9
InBsYWluIHNwYWNlcyI+wqDCoDwvY29kZT48Y29kZSBjbGFzcz0icGxhaW4gcGxhaW4iPnBl
cmwgTWFrZWZpbGUuUEwgRklYSU49InBlcmwgLVMgcGwyYmF0LmJhdCI8L2NvZGU+PC9kaXY+
PGRpdiBjbGFzcz0ibGluZSBudW1iZXI1NiBpbmRleDU1IGFsdDEiPsKgPC9kaXY+PGRpdiBj
bGFzcz0ibGluZSBudW1iZXI1NyBpbmRleDU2IGFsdDIiPjxjb2RlIGNsYXNzPSJwbGFpbiBw
bGFpbiI+T24gV2luZG93cyBhbmQgQUlYIGZvciA1LjEyIGFuZCA1LjE0IHlvdSBuZWVkIHRv
IHBhdGNoIGFuZCByZWJ1aWxkIENPUkUgcGVybDo8L2NvZGU+PC9kaXY+PGRpdiBjbGFzcz0i
bGluZSBudW1iZXI1OCBpbmRleDU3IGFsdDEiPjxjb2RlIGNsYXNzPSJwbGFpbiBzcGFjZXMi
PsKgwqA8L2NvZGU+PGNvZGUgY2xhc3M9InBsYWluIHBsYWluIj5yYW1ibGluZ3MvRXhwb3J0
LXN0b3JlX2NvcF9sYWJlbC1mb3ItdGhlLXBlcmwtY29tcGlsZXIucGF0Y2g8L2NvZGU+PC9k
aXY+PGRpdiBjbGFzcz0ibGluZSBudW1iZXI1OSBpbmRleDU4IGFsdDIiPsKgPC9kaXY+PGRp
diBjbGFzcz0ibGluZSBudW1iZXI2MCBpbmRleDU5IGFsdDEiPjxjb2RlIGNsYXNzPSJwbGFp
biBwbGFpbiI+Rm9yIDUuMTQgYW5kIDUuMTUgSSByZWNvbW1lbmQgYWxzbyB0aGUgZm9sbG93
aW5nIHBhdGNoZXM6PC9jb2RlPjwvZGl2PjxkaXYgY2xhc3M9ImxpbmUgbnVtYmVyNjEgaW5k
ZXg2MCBhbHQyIj48Y29kZSBjbGFzcz0icGxhaW4gc3BhY2VzIj7CoMKgPC9jb2RlPjxjb2Rl
IGNsYXNzPSJwbGFpbiBwbGFpbiI+cmFtYmxpbmdzL3JldmVydC1CLWxvYWQtQkVHSU4ucGF0
Y2ggKFRoZSA1LjE0LjEgdmVyc2lvbik8L2NvZGU+PC9kaXY+PGRpdiBjbGFzcz0ibGluZSBu
dW1iZXI2MiBpbmRleDYxIGFsdDEiPjxjb2RlIGNsYXNzPSJwbGFpbiBzcGFjZXMiPsKgwqA8
L2NvZGU+PGNvZGUgY2xhc3M9InBsYWluIHBsYWluIj5yYW1ibGluZ3MvQ2FycC13by1CLnBh
dGNoPC9jb2RlPjwvZGl2PjxkaXYgY2xhc3M9ImxpbmUgbnVtYmVyNjMgaW5kZXg2MiBhbHQy
Ij7CoDwvZGl2PjxkaXYgY2xhc3M9ImxpbmUgbnVtYmVyNjQgaW5kZXg2MyBhbHQxIj48Y29k
ZSBjbGFzcz0icGxhaW4gcGxhaW4iPldlIGdlbmVyYWxseSBkaXNjb3VyYWdlIHRoZSB1c2Ug
b2YgcGVybCBzaW5jZSA1LjE2IHVuaGFuZGxlZCBhbmQ8L2NvZGU+PC9kaXY+PGRpdiBjbGFz
cz0ibGluZSBudW1iZXI2NSBpbmRleDY0IGFsdDIiPjxjb2RlIGNsYXNzPSJwbGFpbiBwbGFp
biI+dW5hY2tub3dsZWRnZWQgc2VjdXJpdHkgcHJvYmxlbXMgd2l0aCB0aGUgaW1wbGVtZW50
YXRpb24gb2YgInVuaWNvZGUiPC9jb2RlPjwvZGl2PjxkaXYgY2xhc3M9ImxpbmUgbnVtYmVy
NjYgaW5kZXg2NSBhbHQxIj48Y29kZSBjbGFzcz0icGxhaW4gcGxhaW4iPnN5bWJvbHMgYW5k
IHBhY2thZ2VuYW1lcywgd2hlcmUgdGhleSByZWFsbHkgaW1wbGVtZW50ZWQgYmluYXJ5IG5h
bWVzPC9jb2RlPjwvZGl2PjxkaXYgY2xhc3M9ImxpbmUgbnVtYmVyNjcgaW5kZXg2NiBhbHQy
Ij48Y29kZSBjbGFzcz0icGxhaW4gcGxhaW4iPmZvciBhbGwgc3ltYm9scyB3aXRob3V0IGFu
eSBjaGVja3MgYW5kIGZ1cnRoZXIgc3VwcG9ydCBvZiBzdWNoIGJpbmFyeTwvY29kZT48L2Rp
dj48ZGl2IGNsYXNzPSJsaW5lIG51bWJlcjY4IGluZGV4NjcgYWx0MSI+PGNvZGUgY2xhc3M9
InBsYWluIHBsYWluIj5uYW1lcy4gSWRlbnRpZmllcnMgYXJlIG5vdCBpZGVudGlmaWFibGUg
YW55bW9yZS48L2NvZGU+PC9kaXY+PGRpdiBjbGFzcz0ibGluZSBudW1iZXI2OSBpbmRleDY4
IGFsdDIiPjxjb2RlIGNsYXNzPSJwbGFpbiBwbGFpbiI+U2VlIHRoZSB3YXJuaW5nIGF0IHBl
cmwgTWFrZWZpbGUuUEwuPC9jb2RlPjwvZGl2PjxkaXYgY2xhc3M9ImxpbmUgbnVtYmVyNzAg
aW5kZXg2OSBhbHQxIj48Y29kZSBjbGFzcz0icGxhaW4gcGxhaW4iPjUuMjAgaW1wcm92ZWQg
c3VwcG9ydCBmb3IgYmluYXJ5IG5hbWVzIGZvciBtb3N0IHN5c2NhbGxzLCBkdW1wZXJzIGFu
ZDwvY29kZT48L2Rpdj48ZGl2IGNsYXNzPSJsaW5lIG51bWJlcjcxIGluZGV4NzAgYWx0MiI+
PGNvZGUgY2xhc3M9InBsYWluIHBsYWluIj5BUElzLCBidXQgVFIzOSBhbmQgc3RyaWN0IG5h
bWVzIGFyZSBzdGlsbCBub3QgaGFuZGxlZCwgdGhlIHByb2JsZW1zPC9jb2RlPjwvZGl2Pjxk
aXYgY2xhc3M9ImxpbmUgbnVtYmVyNzIgaW5kZXg3MSBhbHQxIj48Y29kZSBjbGFzcz0icGxh
aW4gcGxhaW4iPmFyZSBub3QgdW5kZXJzdG9vZCBhbmQgcmVhY3Rpb25zIGFyZSBnZW5lcmFs
bHkgaG9zdGlsZS48L2NvZGU+PC9kaXY+PGRpdiBjbGFzcz0ibGluZSBudW1iZXI3MyBpbmRl
eDcyIGFsdDIiPjxjb2RlIGNsYXNzPSJwbGFpbiBwbGFpbiI+NS4xOCBtYWRlIGl0IDIwJSBi
aWdnZXIgd2l0aCB0aGUgaW1wbGVtZW50YXRpb24gb2YgQ09XIHN0cmluZ3MuPC9jb2RlPjwv
ZGl2PjxkaXYgY2xhc3M9ImxpbmUgbnVtYmVyNzQgaW5kZXg3MyBhbHQxIj48Y29kZSBjbGFz
cz0icGxhaW4gcGxhaW4iPk1vc3Qgc3RyaW5ncyBjYW5ub3QgYmUgc3RvcmVkIHN0YXRpY2Fs
bHkgYW55bW9yZSBzaW5jZSB0aGVuLjwvY29kZT48L2Rpdj48ZGl2IGNsYXNzPSJsaW5lIG51
bWJlcjc1IGluZGV4NzQgYWx0MiI+PGNvZGUgY2xhc3M9InBsYWluIHBsYWluIj5UaGUgYmVz
dCBwZXJsIHZlcnNpb25zIGZvciB0aGUgY29tcGlsZXIgYXJlIDUuMTQuNCwgNS4yMi4xIGFu
ZCBjcGVybCw8L2NvZGU+PC9kaXY+PGRpdiBjbGFzcz0ibGluZSBudW1iZXI3NiBpbmRleDc1
IGFsdDEiPjxjb2RlIGNsYXNzPSJwbGFpbiBwbGFpbiI+c2luY2UgdGhlc2UgYXJlIHRoZSBt
b3N0IHRlc3RlZCB2ZXJzaW9ucywgd2hlcmUgdGhlIGNvcmV0ZXN0IHN1aXRlIHBhc3Nlcy4N
Cg0KDQpUaGUgYWJvdmUgaXMgb25seSBwYXJ0IG9mIHRoZSBSZWFkbWUgZmlsZS4NCg0KDQpJ
J20gbm90IHN1cmUgd2hhdCB0byBtYWtlIG9mIHRoYXQuDQpFc3BlY2lhbGx5IHRoYXQgcGFy
dCB0aGF0IHNheXM6DQoNCidXZSBnZW5lcmFsbHkgZGlzY291cmFnZSB0aGUgdXNlIG9mIHBl
cmwgc2luY2UgDQo1LjE2IHVuaGFuZGxlZCBhbmQgdW5hY2tub3dsZWRnZWQgc2VjdXJpdHkg
cHJvYmxlbXMnDQoNCg0KTWlrZQ0KPC9jb2RlPjwvZGl2PjwvcHJlPg0KICAgIDxicj4NCiAg
ICA8YnI+DQogICAgPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij5PbiAxLzExLzIwMTkg
OToyOCBBTSwgQnJ1Y2UgRmVycmVsbA0KICAgICAgd3JvdGU6PGJyPg0KICAgIDwvZGl2Pg0K
ICAgIDxibG9ja3F1b3RlIHR5cGU9ImNpdGUiDQogICAgICBjaXRlPSJtaWQ6MzMxMWJlYjgt
MmFlNS1mZmYzLTgwMWEtZGMyNjU2Y2M0OThhQGJheXdpbmRzLm9yZyI+DQogICAgICA8bWV0
YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNl
dD1VVEYtOCI+DQogICAgICBJIGJ1aWx0IGl0IG9uIGEgTGludXggYm94LCBpdCBibGV3IHVw
IHNvIEkgcmVhZCB0aGUgUkVBRE1FLi4uIHRoYXQNCiAgICAgIGhhcyBpbnN0cnVjdGlvbnMg
Zm9yIGhvdyB0byBkbyBpdCBvbiBXaW5kb3dzPGJyPg0KICAgICAgPGJyPg0KICAgICAgQXMg
bm90ZWQgYnkgYW5vdGhlciBwb3N0ZXIsIGl0IHNlZW1zIHRvIHdvcmsgaW4gc3BpdGUgb2Yg
dGhlIHRlc3QNCiAgICAgIGJsb3dpbmcgdXA8YnI+DQogICAgICA8YnI+DQogICAgICA8ZGl2
IGNsYXNzPSJtb3otY2l0ZS1wcmVmaXgiPk9uIDEvMTEvMTkgNTozNyBBTSwgTWlrZSBGbGFu
bmlnYW4NCiAgICAgICAgd3JvdGU6PGJyPg0KICAgICAgPC9kaXY+DQogICAgICA8YmxvY2tx
dW90ZSB0eXBlPSJjaXRlIg0KICAgICAgICBjaXRlPSJtaWQ6M2EwZmViMGItYzIwMS01OWRm
LTM0MDktMmQyN2NhZjM4ZWNlQGF0dC5uZXQiPg0KICAgICAgICA8bWV0YSBodHRwLWVxdWl2
PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsNCiAgICAgICAgICBjaGFyc2V0
PVVURi04Ij4NCiAgICAgICAgPGJyPg0KICAgICAgICBJIGNvdWxkIHVzZSBzb21lIG1vcmUg
ZXhwbGFuYXRpb24uPGJyPg0KICAgICAgICA8YnI+DQogICAgICAgIEI6OkMgaXMgYSBtb2R1
bGUgdGhhdCB5b3UgaW5zdGFsbCBmcm9tIENQQU4uPGJyPg0KICAgICAgICBJIGFzc3VtZSBJ
IGRvbid0IHB1dCBVc2UgQjo6QyBhdCB0aGUgdG9wIG9mIDxicj4NCiAgICAgICAgbXkgcGVy
bCBzY3JpcHQsIGJ1dCBpbnN0ZWFkIHBlcmxjYyB1c2VzIGl0Ljxicj4NCiAgICAgICAgPGJy
Pg0KICAgICAgICBJcyBwZXJsY2MgYWxzbyBhIG1vZHVsZT88YnI+DQogICAgICAgIE9yIGlz
IHRoYXQgYW4gZXhlY3V0YWJsZT88YnI+DQogICAgICAgIEkgdGhpbmsgSSBzZWUgdGhhdCBp
dCBpcyBjb21wb3NlZCBvZiA1IGZpbGVzOjxicj4NCiAgICAgICAgYXNzZW1ibGU8YnI+DQog
ICAgICAgIGNjX2hhcm5lc3M8YnI+DQogICAgICAgIGRpc2Fzc2VtYmxlPGJyPg0KICAgICAg
ICBwZXJsY2MuUEw8YnI+DQogICAgICAgIHBsMmV4ZS5wbDxicj4NCiAgICAgICAgPGJyPg0K
ICAgICAgICBBZnRlciBpbnN0YWxsaW5nIHBlcmxjYywgZG8gSSBqdXN0IG9wZW4gYSBjb21t
YW5kIDxicj4NCiAgICAgICAgcHJvbXB0IGFuZCB0eXBlIHBlcmxjYyAtbyBoZWxsby5leGUg
aGVsbG8ucGw/PGJyPg0KICAgICAgICA8YnI+DQogICAgICAgIERvZXMgYWxsIHRoaXMgd29y
ayBvbiBXaW5kb3dzP8KgIE15IGd1ZXNzIGlzIFllcy48YnI+DQogICAgICAgIDxicj4NCiAg
ICAgICAgPGJyPg0KICAgICAgICBNaWtlPGJyPg0KICAgICAgICA8YnI+DQogICAgICAgIDxi
cj4NCiAgICAgICAgPGRpdiBjbGFzcz0ibW96LWNpdGUtcHJlZml4Ij5PbiAxLzExLzIwMTkg
Njo1NyBBTSwgQW5kcmV3DQogICAgICAgICAgU29sb21vbiB3cm90ZTo8YnI+DQogICAgICAg
IDwvZGl2Pg0KICAgICAgICA8YmxvY2txdW90ZSB0eXBlPSJjaXRlIg0KY2l0ZT0ibWlkOkNB
Tj10d0tzWWluelU2c2Z4OC15am0zcnpPTGY1T3EyK1RSUFBBNzJfemJOc1YzaTJTZ0BtYWls
LmdtYWlsLmNvbSI+DQogICAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBl
IiBjb250ZW50PSJ0ZXh0L2h0bWw7DQogICAgICAgICAgICBjaGFyc2V0PVVURi04Ij4NCiAg
ICAgICAgICA8ZGl2IGRpcj0ibHRyIj4NCiAgICAgICAgICAgIDxkaXYgZGlyPSJsdHIiPkp1
c3QgYSB3YXJuaW5nIC0gSSdtIG5vIGV4cGVydCBvbiB0aGlzIHRvcGljLA0KICAgICAgICAg
ICAgICBidXQgaXQgd2FzIHN1Y2ggYW4gaW50ZXJlc3RpbmcgcXVlc3Rpb24gSSBkZWNpZGVk
IHRvIGZpbmQNCiAgICAgICAgICAgICAgb3V0IGZvciBteXNlbGYgOi0pDQogICAgICAgICAg
ICAgIDxkaXY+PGJyPg0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPGRp
dj5JIGluc3RhbGxlZCBCOjpDIGFuZCByYW7CoDxhDQogICAgICAgICAgICAgICAgICBocmVm
PSJodHRwczovL21ldGFjcGFuLm9yZy9wb2QvZGlzdHJpYnV0aW9uL0ItQy9zY3JpcHQvcGVy
bGNjLlBMIg0KICAgICAgICAgICAgICAgICAgdGFyZ2V0PSJfYmxhbmsiIG1vei1kby1ub3Qt
c2VuZD0idHJ1ZSI+aHR0cHM6Ly9tZXRhY3Bhbi5vcmcvcG9kL2Rpc3RyaWJ1dGlvbi9CLUMv
c2NyaXB0L3BlcmxjYy5QTDwvYT48L2Rpdj4NCiAgICAgICAgICAgICAgPGRpdj48YnI+DQog
ICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICA8ZGl2Pkl0IGFjdHVhbGx5IGRv
ZXMgdGhlIGNvbXBpbGF0aW9uIC0gYXMgb3Bwb3NlZCB0byBwcA0KICAgICAgICAgICAgICAg
IHdoaWNoIGlzIGp1c3QgcGFja2FnaW5nIGl0IC0gc28geW91IGRvbid0IHNlZSB0aGUgcGVy
bA0KICAgICAgICAgICAgICAgIGNvZGUgb2YgdGhlIHNvdXJjZSBmaWxlLjwvZGl2Pg0KICAg
ICAgICAgICAgICA8ZGl2Pjxicj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAg
ICAgIDxkaXY+RG9lcyB0aGF0IHJlc29sdmUgeW91csKgcXVlc3Rpb24/PC9kaXY+DQogICAg
ICAgICAgICAgIDxkaXY+PGJyPg0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAg
ICAgPGRpdj5BbmRyZXc8L2Rpdj4NCiAgICAgICAgICAgICAgPGRpdj48YnI+DQogICAgICAg
ICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICA8ZGl2Pjxicj4NCiAgICAgICAgICAgICAg
PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAg
ICA8YnI+DQogICAgICAgICAgPGRpdiBjbGFzcz0iZ21haWxfcXVvdGUiPg0KICAgICAgICAg
ICAgPGRpdiBkaXI9Imx0ciI+T24gRnJpLCBKYW4gMTEsIDIwMTkgYXQgOTo1OSBBTSBVZGF5
IFZlcm5la2FyDQogICAgICAgICAgICAgICZsdDs8YSBocmVmPSJtYWlsdG86dmVybmVrYXJ1
ZGF5QGdtYWlsLmNvbSINCiAgICAgICAgICAgICAgICB0YXJnZXQ9Il9ibGFuayIgbW96LWRv
LW5vdC1zZW5kPSJ0cnVlIj52ZXJuZWthcnVkYXlAZ21haWwuY29tPC9hPiZndDsNCiAgICAg
ICAgICAgICAgd3JvdGU6PGJyPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8
YmxvY2txdW90ZSBjbGFzcz0iZ21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MHB4IDBweCAw
cHgNCiAgICAgICAgICAgICAgMC44ZXg7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkDQogICAgICAg
ICAgICAgIHJnYigyMDQsMjA0LDIwNCk7cGFkZGluZy1sZWZ0OjFleCI+DQogICAgICAgICAg
ICAgIDxwIGRpcj0ibHRyIj5IaSBhbGwsPC9wPg0KICAgICAgICAgICAgICA8cCBkaXI9Imx0
ciI+SSBoYXZlIGEgcGVybCBjb2RlIHdoaWNoIEkgbmVlZCB0byBjb3ZlcnQgdG8NCiAgICAg
ICAgICAgICAgICBiaW5hcnkgc28gdGhhdCBub2JvZHkgY2FuIHNlZSB0aGUgY29kZS48L3A+
DQogICAgICAgICAgICAgIDxwIGRpcj0ibHRyIj53ZSB1c2VkIHBwIHBhY2thZ2UgdG8gbWFr
ZSB0aGUgcGVybCBjb2RlDQogICAgICAgICAgICAgICAgYmluYXJ5IGJ1dCBoZXJlIHRoZSB1
c2VyIGNhbiBzZWUgdGhlIGNvZGUgd2hpY2ggZ2V0cw0KICAgICAgICAgICAgICAgIGNyZWF0
ZWQgaW4gdG1wLjwvcD4NCiAgICAgICAgICAgICAgPHAgZGlyPSJsdHIiPk5lZWQgaGVscCBp
ZiBhbnlib2R5IGtub3dzIGtpbmRseSByZXBseTwvcD4NCiAgICAgICAgICAgICAgPHAgZGly
PSJsdHIiPldpdGggcmVnYXJkczxicj4NCiAgICAgICAgICAgICAgICBVZGF5IFYgRzwvcD4N
CiAgICAgICAgICAgIDwvYmxvY2txdW90ZT4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAg
ICA8YnIgY2xlYXI9ImFsbCI+DQogICAgICAgICAgPGRpdj48YnI+DQogICAgICAgICAgPC9k
aXY+DQogICAgICAgICAgLS0gPGJyPg0KICAgICAgICAgIDxkaXYgZGlyPSJsdHIiDQogICAg
ICAgICAgICBjbGFzcz0iZ21haWwtbV8tMTI1MzE5ODk2MjUwMzUyNDQ4NGdtYWlsX3NpZ25h
dHVyZSI+DQogICAgICAgICAgICA8ZGl2IGRpcj0ibHRyIj4NCiAgICAgICAgICAgICAgPGRp
dj4NCiAgICAgICAgICAgICAgICA8ZGl2IGRpcj0ibHRyIj4NCiAgICAgICAgICAgICAgICAg
IDxkaXY+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgZGlyPSJsdHIiPkFuZHJldyBTb2xv
bW9uDQogICAgICAgICAgICAgICAgICAgICAgPGRpdj48c3BhbiBzdHlsZT0iZm9udC1zaXpl
OjEyLjhweCI+PGJyPg0KICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvZGl2Pg0K
ICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMi44
cHgiPlBlcmwgVHJhaW5lciwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgR2Vla3VuacKg
PC9zcGFuPjxhIGhyZWY9Imh0dHA6Ly9nZWVrdW5pLmNvbS8iDQogICAgICAgICAgICAgICAg
ICAgICAgICAgIHN0eWxlPSJmb250LXNpemU6MTIuOHB4IiB0YXJnZXQ9Il9ibGFuayINCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgbW96LWRvLW5vdC1zZW5kPSJ0cnVlIj5odHRwOi8v
Z2Vla3VuaS5jb20vPC9hPjxicj4NCiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAg
ICAgICAgICAgICAgICAgICAgICA8ZGl2PjxhIGhyZWY9Im1haWx0bzphbmRyZXdAZ2Vla3Vu
aS5jb20iDQogICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD0iX2JsYW5rIiBtb3ot
ZG8tbm90LXNlbmQ9InRydWUiPmFuZHJld0BnZWVrdW5pLmNvbTwvYT4NCiAgICAgICAgICAg
ICAgICAgICAgICAgIC8vICs0NCA3OTMxIDk0NiAwNjI8L2Rpdj4NCiAgICAgICAgICAgICAg
ICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAg
ICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAg
ICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9ibG9ja3F1b3RlPg0KICAgICAgICA8YnI+DQog
ICAgICA8L2Jsb2NrcXVvdGU+DQogICAgICA8YnI+DQogICAgPC9ibG9ja3F1b3RlPg0KICAg
IDxicj4NCiAgPC9ib2R5Pg0KPC9odG1sPg0K
--------------3EFA5643DDA5BC43E491A6A0--
0
mikeflan
1/11/2019 4:03:05 PM
--00000000000056c335057f64ab47
Content-Type: text/plain; charset="UTF-8"

Nobody is very smart :) so only we want him not to see the code..we tried
bleach as well..one can see the code by replacing end of  first line of
bleached code with print and after executing we can see the code.
On 11-Jan-2019 6:29 pm, "David Mertens" <dcmertens.perl@gmail.com> wrote:

> How dumb is your "nobody"? Would Acme::Bleach do the trick? Or something
> similar?
>
> :)
>
> On Fri, Jan 11, 2019, 5:01 AM Uday Vernekar <vernekaruday@gmail.com wrote:
>
>> Hi all,
>>
>> I have a perl code which I need to covert to binary so that nobody can
>> see the code.
>>
>> we used pp package to make the perl code binary but here the user can see
>> the code which gets created in tmp.
>>
>> Need help if anybody knows kindly reply
>>
>> With regards
>> Uday V G
>>
>

--00000000000056c335057f64ab47
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<p dir=3D"ltr">Nobody is very smart :) so only we want him not to see the c=
ode..we tried bleach as well..one can see the code by replacing end of=C2=
=A0 first line of bleached code with print and after executing we can see t=
he code.</p>
<div class=3D"gmail_quote">On 11-Jan-2019 6:29 pm, &quot;David Mertens&quot=
; &lt;<a href=3D"mailto:dcmertens.perl@gmail.com">dcmertens.perl@gmail.com<=
/a>&gt; wrote:<br type=3D"attribution"><blockquote class=3D"gmail_quote" st=
yle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div =
dir=3D"auto">How dumb is your &quot;nobody&quot;? Would Acme::Bleach do the=
 trick? Or something similar?<div dir=3D"auto"><br></div><div dir=3D"auto">=
:)</div></div><br><div class=3D"gmail_quote"><div dir=3D"ltr">On Fri, Jan 1=
1, 2019, 5:01 AM Uday Vernekar &lt;<a href=3D"mailto:vernekaruday@gmail.com=
" target=3D"_blank">vernekaruday@gmail.com</a> wrote:<br></div><blockquote =
class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid=
;padding-left:1ex"><p dir=3D"ltr">Hi all,</p>
<p dir=3D"ltr">I have a perl code which I need to covert to binary so that =
nobody can see the code.</p>
<p dir=3D"ltr">we used pp package to make the perl code binary but here the=
 user can see the code which gets created in tmp.</p>
<p dir=3D"ltr">Need help if anybody knows kindly reply</p>
<p dir=3D"ltr">With regards<br>
Uday V G</p>
</blockquote></div>
</blockquote></div>

--00000000000056c335057f64ab47--
0
vernekaruday
1/14/2019 5:53:50 AM
--0000000000000ad233057fa360e3
Content-Type: text/plain; charset="UTF-8"

perlcc has been removed from Perl.....
https://www.perlmonks.org/index.pl?node_id=654568
On 11-Jan-2019 6:27 pm, "Andrew Solomon" <andrew@geekuni.com> wrote:

> Just a warning - I'm no expert on this topic, but it was such an
> interesting question I decided to find out for myself :-)
>
> I installed B::C and ran https://metacpan.org/pod/distribution/B-C/script/
> perlcc.PL
>
> It actually does the compilation - as opposed to pp which is just
> packaging it - so you don't see the perl code of the source file.
>
> Does that resolve your question?
>
> Andrew
>
>
>
> On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar <vernekaruday@gmail.com>
> wrote:
>
>> Hi all,
>>
>> I have a perl code which I need to covert to binary so that nobody can
>> see the code.
>>
>> we used pp package to make the perl code binary but here the user can see
>> the code which gets created in tmp.
>>
>> Need help if anybody knows kindly reply
>>
>> With regards
>> Uday V G
>>
>
>
> --
> Andrew Solomon
>
> Perl Trainer, Geekuni http://geekuni.com/
> andrew@geekuni.com // +44 7931 946 062
>

--0000000000000ad233057fa360e3
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<p dir=3D"ltr">perlcc has been removed from Perl.....<br>
<a href=3D"https://www.perlmonks.org/index.pl?node_id=3D654568">https://www=
..perlmonks.org/index.pl?node_id=3D654568</a></p>
<div class=3D"gmail_quote">On 11-Jan-2019 6:27 pm, &quot;Andrew Solomon&quo=
t; &lt;<a href=3D"mailto:andrew@geekuni.com">andrew@geekuni.com</a>&gt; wro=
te:<br type=3D"attribution"><blockquote class=3D"gmail_quote" style=3D"marg=
in:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"=
><div dir=3D"ltr">Just a warning - I&#39;m no expert on this topic, but it =
was such an interesting question I decided to find out for myself :-)<div><=
br></div><div>I installed B::C and ran=C2=A0<a href=3D"https://metacpan.org=
/pod/distribution/B-C/script/perlcc.PL" target=3D"_blank">https://metacpan.=
org/pod/<wbr>distribution/B-C/script/<wbr>perlcc.PL</a></div><div><br></div=
><div>It actually does the compilation - as opposed to pp which is just pac=
kaging it - so you don&#39;t see the perl code of the source file.</div><di=
v><br></div><div>Does that resolve your=C2=A0question?</div><div><br></div>=
<div>Andrew</div><div><br></div><div><br></div></div></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr">On Fri, Jan 11, 2019 at 9:59 AM Uday Vern=
ekar &lt;<a href=3D"mailto:vernekaruday@gmail.com" target=3D"_blank">vernek=
aruday@gmail.com</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" =
style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pa=
dding-left:1ex"><p dir=3D"ltr">Hi all,</p>
<p dir=3D"ltr">I have a perl code which I need to covert to binary so that =
nobody can see the code.</p>
<p dir=3D"ltr">we used pp package to make the perl code binary but here the=
 user can see the code which gets created in tmp.</p>
<p dir=3D"ltr">Need help if anybody knows kindly reply</p>
<p dir=3D"ltr">With regards<br>
Uday V G</p>
</blockquote></div><br clear=3D"all"><div><br></div>-- <br><div dir=3D"ltr"=
><div dir=3D"ltr"><div><div dir=3D"ltr"><div><div dir=3D"ltr">Andrew Solomo=
n<div><span style=3D"font-size:12.8px"><br></span></div><div><span style=3D=
"font-size:12.8px">Perl Trainer, Geekuni=C2=A0</span><a href=3D"http://geek=
uni.com/" style=3D"font-size:12.8px" target=3D"_blank">http://geekuni.com/<=
/a><br></div><div><a href=3D"mailto:andrew@geekuni.com" target=3D"_blank">a=
ndrew@geekuni.com</a> // +44 7931 946 062</div></div></div></div></div></di=
v></div>
</blockquote></div>

--0000000000000ad233057fa360e3--
0
vernekaruday
1/17/2019 8:42:30 AM
The only way to truly hide code is to not give the code to the person
you don't want to see it.  Even languages like C have decompilers. If
you truly need to prevent people from seeing code, then your only real
option is to run a server and distribute a client that connects to the
server.  If all you need to is to discourage casual lookers from
seeing the source, then you only need something like Acme::Bleach.
Yes, you can unbleach the code, but it takes effort and knowledge and
with those no code is safe behind any form of obfuscation (including
compilation to binary).

If you are trying to hide the code because you are distributing
secrets (like passwords, api keys, etc) in your code, then you have a
fundamental design issue that needs to be fixed.

On Mon, Jan 14, 2019 at 12:56 AM Uday Vernekar <vernekaruday@gmail.com> wrote:
>
> Nobody is very smart :) so only we want him not to see the code..we tried bleach as well..one can see the code by replacing end of  first line of bleached code with print and after executing we can see the code.
>
> On 11-Jan-2019 6:29 pm, "David Mertens" <dcmertens.perl@gmail.com> wrote:
>>
>> How dumb is your "nobody"? Would Acme::Bleach do the trick? Or something similar?
>>
>> :)
>>
>> On Fri, Jan 11, 2019, 5:01 AM Uday Vernekar <vernekaruday@gmail.com wrote:
>>>
>>> Hi all,
>>>
>>> I have a perl code which I need to covert to binary so that nobody can see the code.
>>>
>>> we used pp package to make the perl code binary but here the user can see the code which gets created in tmp.
>>>
>>> Need help if anybody knows kindly reply
>>>
>>> With regards
>>> Uday V G
0
chas
1/17/2019 2:45:04 PM
The author of that module is Reini Urban. He has a long standing feud
with the Perl 5 Porters (the team that writes Perl).

On Fri, Jan 11, 2019 at 11:05 AM Mike Flannigan <mikeflan@att.net> wrote:
>
>
> Thanks.
>
> My Strawberry install finally failed with
> Stopping: 'install' failed for 'B::C'.
>
> I am running ver 5.26 of Strawberry.
>
>
>
> I suspect you mean this Readme file:
>
> INSTALL
>
> cpan B::C
>
> On strawberry I needed
>   perl Makefile.PL FIXIN="perl -S pl2bat.bat"
>
> On Windows and AIX for 5.12 and 5.14 you need to patch and rebuild CORE perl:
>   ramblings/Export-store_cop_label-for-the-perl-compiler.patch
>
> For 5.14 and 5.15 I recommend also the following patches:
>   ramblings/revert-B-load-BEGIN.patch (The 5.14.1 version)
>   ramblings/Carp-wo-B.patch
>
> We generally discourage the use of perl since 5.16 unhandled and
> unacknowledged security problems with the implementation of "unicode"
> symbols and packagenames, where they really implemented binary names
> for all symbols without any checks and further support of such binary
> names. Identifiers are not identifiable anymore.
> See the warning at perl Makefile.PL.
> 5.20 improved support for binary names for most syscalls, dumpers and
> APIs, but TR39 and strict names are still not handled, the problems
> are not understood and reactions are generally hostile.
> 5.18 made it 20% bigger with the implementation of COW strings.
> Most strings cannot be stored statically anymore since then.
> The best perl versions for the compiler are 5.14.4, 5.22.1 and cperl,
> since these are the most tested versions, where the coretest suite passes.
>
>
> The above is only part of the Readme file.
>
>
> I'm not sure what to make of that.
> Especially that part that says:
>
> 'We generally discourage the use of perl since
> 5.16 unhandled and unacknowledged security problems'
>
>
> Mike
>
>
>
> On 1/11/2019 9:28 AM, Bruce Ferrell wrote:
>
> I built it on a Linux box, it blew up so I read the README... that has instructions for how to do it on Windows
>
> As noted by another poster, it seems to work in spite of the test blowing up
>
> On 1/11/19 5:37 AM, Mike Flannigan wrote:
>
>
> I could use some more explanation.
>
> B::C is a module that you install from CPAN.
> I assume I don't put Use B::C at the top of
> my perl script, but instead perlcc uses it.
>
> Is perlcc also a module?
> Or is that an executable?
> I think I see that it is composed of 5 files:
> assemble
> cc_harness
> disassemble
> perlcc.PL
> pl2exe.pl
>
> After installing perlcc, do I just open a command
> prompt and type perlcc -o hello.exe hello.pl?
>
> Does all this work on Windows?  My guess is Yes.
>
>
> Mike
>
>
> On 1/11/2019 6:57 AM, Andrew Solomon wrote:
>
> Just a warning - I'm no expert on this topic, but it was such an interesting question I decided to find out for myself :-)
>
> I installed B::C and ran https://metacpan.org/pod/distribution/B-C/script/perlcc.PL
>
> It actually does the compilation - as opposed to pp which is just packaging it - so you don't see the perl code of the source file.
>
> Does that resolve your question?
>
> Andrew
>
>
>
> On Fri, Jan 11, 2019 at 9:59 AM Uday Vernekar <vernekaruday@gmail.com> wrote:
>>
>> Hi all,
>>
>> I have a perl code which I need to covert to binary so that nobody can see the code.
>>
>> we used pp package to make the perl code binary but here the user can see the code which gets created in tmp.
>>
>> Need help if anybody knows kindly reply
>>
>> With regards
>> Uday V G
>
>
>
> --
> Andrew Solomon
>
> Perl Trainer, Geekuni http://geekuni.com/
> andrew@geekuni.com // +44 7931 946 062
>
>
>
>
0
chas
1/17/2019 2:48:41 PM
From: "Chas. Owens" <chas.owens@gmail.com>

> The only way to truly hide code is to not give the code to the person
> you don't want to see it.  Even languages like C have decompilers. If
> you truly need to prevent people from seeing code, then your only real
> option is to run a server and distribute a client that connects to the
> server.  If all you need to is to discourage casual lookers from
> seeing the source, then you only need something like Acme::Bleach.
> Yes, you can unbleach the code, but it takes effort and knowledge and
> with those no code is safe behind any form of obfuscation (including
> compilation to binary).
>
> If you are trying to hide the code because you are distributing
> secrets (like passwords, api keys, etc) in your code, then you have a
> fundamental design issue that needs to be fixed.
>



Decompiling C/C++/asm code in a form that can be re-compiled again is hard 
to do for most programmers.
Finding/unhiding the provided Perl code is not as hard.

So the real answer is that if the protection of the source code is so 
important, then Perl is not an appropriate programming language for this, 
because it doesn't have a way of compiling the code and storing it in files 
that can be distributed and ran by the final users. C/C++/Java/C# or even Go 
or Python are better for this.

As far as I know, perlcc never really worked for complex programs. It might 
work for Hello, world programs, but not fore more, so it is not a solution 
either.

ActiveState PDK could be a good enough solution for hiding the source code, 
but it is not a very clean solution that works well for any kind of 
programs, and it doesn't compile the code.

Creating web-based apps that run on a server might not be a solution either, 
because in some cases a local (desktop) app with a OS native interface is 
needed.

Perl still has its advantages, but not for compiling/hiding code and for 
distributing the programs to final users, and because it is used less and 
less for new projects, probably it will never have that kind of advantage 
unfortunately.

Other people used to recommend to distribute a license and put the loyers 
sue those that don't respect it, but it is obvious that this is not a 
solution either.

Perl is good only when is not necessary to hide the code, for example for 
very complex web-based apps that can't be replaced with an already-made free 
CMS, or for special programs that run on a server by a cron job, but not for 
applications ran by common users on their desktop computers. 
....unfortunately.

--Octavian
0
orasnita
1/17/2019 3:48:50 PM
Hi,

On Thu, 17 Jan 2019 17:48:50 +0200
"Octavian Rasnita" <orasnita@gmail.com> wrote:

> From: "Chas. Owens" <chas.owens@gmail.com>
>=20
> > The only way to truly hide code is to not give the code to the person
> > you don't want to see it.  Even languages like C have decompilers. If
> > you truly need to prevent people from seeing code, then your only real
> > option is to run a server and distribute a client that connects to the
> > server.  If all you need to is to discourage casual lookers from
> > seeing the source, then you only need something like Acme::Bleach.
> > Yes, you can unbleach the code, but it takes effort and knowledge and
> > with those no code is safe behind any form of obfuscation (including
> > compilation to binary).
> >
> > If you are trying to hide the code because you are distributing
> > secrets (like passwords, api keys, etc) in your code, then you have a
> > fundamental design issue that needs to be fixed.
> > =20
>=20
>=20
>=20
> Decompiling C/C++/asm code in a form that can be re-compiled again is har=
d=20
> to do for most programmers.
> Finding/unhiding the provided Perl code is not as hard.
>=20
> So the real answer is that if the protection of the source code is so=20
> important, then Perl is not an appropriate programming language for this,=
=20
> because it doesn't have a way of compiling the code and storing it in fil=
es=20
> that can be distributed and ran by the final users. C/C++/Java/C# or even=
 Go=20
> or Python are better for this.
>=20

Please see
https://github.com/shlomif/Freenode-programming-channel-FAQ/blob/master/FAQ=
..mdwn#how-do-i-hideobscureencrypt-my-source-code-to-prevent-end-users-from-=
learning-how-it-works

(short URL: https://is.gd/pLk1b2 )

Python is not suitable for that either. Also note that while decompiling is
problematic, https://en.wikipedia.org/wiki/Reverse_engineering is usually
doable with some effort if you wish to learn about a certain key technique.

> As far as I know, perlcc never really worked for complex programs. It mig=
ht=20
> work for Hello, world programs, but not fore more, so it is not a solutio=
n=20
> either.
>=20
> ActiveState PDK could be a good enough solution for hiding the source cod=
e,=20
> but it is not a very clean solution that works well for any kind of=20
> programs, and it doesn't compile the code.
>=20
> Creating web-based apps that run on a server might not be a solution eith=
er,=20
> because in some cases a local (desktop) app with a OS native interface is=
=20
> needed.
>=20
> Perl still has its advantages, but not for compiling/hiding code and for=
=20
> distributing the programs to final users, and because it is used less and=
=20
> less for new projects, probably it will never have that kind of advantage=
=20
> unfortunately.
>=20
> Other people used to recommend to distribute a license and put the loyers=
=20
> sue those that don't respect it, but it is obvious that this is not a=20
> solution either.
>=20
> Perl is good only when is not necessary to hide the code, for example for=
=20
> very complex web-based apps that can't be replaced with an already-made f=
ree=20
> CMS, or for special programs that run on a server by a cron job, but not =
for=20
> applications ran by common users on their desktop computers.=20
> ...unfortunately.
>=20
> --Octavian
>=20



--=20
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
Beginners Site for the Vim text editor - http://vim.begin-site.org/

Wikipedia deletionists Don=E2=80=99t Die. They lose notability and get dele=
ted.
    =E2=80=94 http://www.shlomifish.org/humour.html

Please reply to list if it's a mailing list post - http://shlom.in/reply .
0
shlomif
1/17/2019 4:33:51 PM
Reply: