MIDRANGE dot COM Mailing List Archive



Home » MIDRANGE-L » June 2014

RE: Attempting to use SQL HEX



fixed

Hi Scott - though you had something there
But its NOT to be
When I look at the length of the trimmed field - its 62, but the 40 is the 63rd and 64th charcter.


Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
'If you're going through hell, keep going.'
Winston Churchill

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Scott Mildenberger
Sent: Wednesday, June 11, 2014 2:21 PM
To: Midrange Systems Technical Discussion
Subject: RE: Attempting to use SQL HEX

Maybe use a varying field for the result. Or, when moving the result you always need to get twice as many characters as the original string contained, that way you won't lose a '40' on the end.

Scott


-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Alan Shore
Sent: Wednesday, June 11, 2014 12:17 PM
To: Midrange Systems Technical Discussion
Subject: RE: Attempting to use SQL HEX

Okay
That is now working
Unfortunately, it's NOT giving me the desired results Let me explain Are you sitting comfortably - then I will begin

I am trying to create a Hex HMAC encryption

This web site is what I am using to validate the results http://www.freeformatter.com/hmac-generator.html

I input the following string
NBTYws0133251settle2015-01531200bbbbmdbjc0154purchasekeyed8261379Payment for order number 16363502064581

With the secret key
And use SHA256 for the message digest algorithm

Here is the result
fbc2164ef24fe7c9e55bc1e09e03a0c674a5114619b071c3a24faf2eddeede40

When I attempt to create the same thing in RPGLE (or SQLRPGLE) The response I receive is in debug
....5...10...15...20...25...30...35...40...45...50...55...60
1 'FBC2164EF24FE7C9E55BC1E09E03A0C674A5114619B071C3A24FAF2EDDEE'
61 'DE4040404040404040404040404040404040404040404040404040404040'
121 '404040404040404040404040404040404040404040404040404040404040'
181 '404040404040404040404040404040404040404040404040404040404040'
241 '404040404040404040404040404040404040404040404040404040404040'
301 '404040404040404040404040404040404040404040404040404040404040'
361 '404040404040404040404040404040404040404040404040404040404040'
421 '404040404040404040404040404040404040404040404040404040404040'
481 '404040404040404040404040404040404040404040404040404040404040'
541 '404040404040404040404040404040404040404040404040404040404040'
601 '404040404040404040404040404040404040404040404040404040404040'

But when I attempt to trim this, or move it to another field, ALL the 40's are dropped and the result is

FBC2164EF24FE7C9E55BC1E09E03A0C674A5114619B071C3A24FAF2EDDEEDE

Which is NOT equal to

fbc2164ef24fe7c9e55bc1e09e03a0c674a5114619b071c3a24faf2eddeede40

ignoring the case

I first tried the function cvthc, then I found the SQL command HEX and thought I would give it a try Unfortunately - no luck. I get the same answer in both cases, which doesn't agree with the web result



Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
'If you're going through hell, keep going.'
Winston Churchill

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Alan Shore
Sent: Wednesday, June 11, 2014 1:48 PM
To: Midrange Systems Technical Discussion
Subject: RE: Attempting to use SQL HEX

MUCH appreciated Charles
I created a new variable and used that instead Heres the code snippet
d SQLbinaryHMAC...
D s 16366

SQLbinaryHMAC = binaryHMAC;
Exec Sql
Set :SQLHexEquivalent = Hex(:SQLbinaryHMAC);

This now compiles

Now to test



Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
'If you're going through hell, keep going.'
Winston Churchill

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Charles Wilt
Sent: Wednesday, June 11, 2014 1:36 PM
To: Midrange Systems Technical Discussion
Subject: Re: Attempting to use SQL HEX

Too big...

"any built-in data type OTHER THAN a character or binary string with a length attribute greater than 16,336"

Charles


On Wed, Jun 11, 2014 at 1:31 PM, Alan Shore <ashore@xxxxxxxx> wrote:

d binaryHMAC...
D s 32765

Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
'If you're going through hell, keep going.'
Winston Churchill

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of
Charles Wilt
Sent: Wednesday, June 11, 2014 1:30 PM
To: Midrange Systems Technical Discussion
Subject: Re: Attempting to use SQL HEX

How's BINARYHMAC defined?

Charles


On Wed, Jun 11, 2014 at 1:12 PM, Alan Shore <ashore@xxxxxxxx> wrote:

Thanks Charles
The sound that you are hearing is me giving myself dopeslaps However
- now I am getting the following compile error

SQL0171 30 250 Position 17 Argument 1 of function HEX not valid.

Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
'If you're going through hell, keep going.'
Winston Churchill

-----Original Message-----
From: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf
Of Charles Wilt
Sent: Wednesday, June 11, 2014 1:07 PM
To: Midrange Systems Technical Discussion
Subject: Re: Attempting to use SQL HEX

You forgot the :
:binaryHMAC

Charles


On Wed, Jun 11, 2014 at 12:57 PM, Alan Shore <ashore@xxxxxxxx> wrote:

Hi everyone
Before I forget, we are on V5r4
In STRSQL I can execute the following SQL statement select
hex('QUESTION') FROM SYSIBM/SYSDUMMY1 And get the response of
D8E4C5E2E3C9D6D5

I need to do the same thing on a field in an SQLRPG program Here
is the code snippet

exec sql SET OPTION COMMIT=*NONE, DATFMT=*ISO, CLOSQLCSR=*ENDMOD;
exec sql DISCONNECT ALL; exec sql CONNECT RESET; Exec Sql
Select Hex(binaryHMAC) into :SQLHexEquivalent
From SYSIBM/SYSDUMMY1;

And when I compile the program, this is the error
SQL0206 30 250 Position 38 Column BINARYHMAC not in specified
tables.

As always - any and all responses gratefully accepted

Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
'If you're going through hell, keep going.'
Winston Churchill


Disclaimer: This message contains confidential information and is
intended only for the individual named. If you are not the named
addressee you should not disseminate, distribute or copy this e-mail.
Please notify the sender immediately by e-mail if you have
received this e-mail by mistake and delete this e-mail from your system.
E-mail transmission cannot be guaranteed to be secure or
error-free as information could be intercepted, corrupted, lost,
destroyed, arrive
late or incomplete, or contain viruses.
The sender therefore does not accept liability for any errors or
omissions in the contents of this message, which arise as a result
of e-mail transmission. If verification is required please request
a hard-copy version. Any views or opinions presented are solely
those of the author and do not necessarily represent those of the company.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
http://archive.midrange.com/midrange-l.


Disclaimer: This message contains confidential information and is
intended only for the individual named. If you are not the named
addressee you should not disseminate, distribute or copy this e-mail.
Please notify the sender immediately by e-mail if you have received
this e-mail by mistake and delete this e-mail from your system.
E-mail transmission cannot be guaranteed to be secure or error-free
as information could be intercepted, corrupted, lost, destroyed,
arrive
late or incomplete, or contain viruses.
The sender therefore does not accept liability for any errors or
omissions in the contents of this message, which arise as a result
of e-mail transmission. If verification is required please request a
hard-copy version. Any views or opinions presented are solely those
of the author and do not necessarily represent those of the company.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at http://archive.midrange.com/midrange-l.


Disclaimer: This message contains confidential information and is
intended only for the individual named. If you are not the named
addressee you should not disseminate, distribute or copy this e-mail.
Please notify the sender immediately by e-mail if you have received
this e-mail by mistake and delete this e-mail from your system. E-mail
transmission cannot be guaranteed to be secure or error-free as
information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses.
The sender therefore does not accept liability for any errors or
omissions in the contents of this message, which arise as a result of
e-mail transmission. If verification is required please request a
hard-copy version. Any views or opinions presented are solely those of
the author and do not necessarily represent those of the company.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at
http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.


Disclaimer: This message contains confidential information and is intended only for the individual named. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail from your system. E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. The sender therefore does not accept liability for any errors or omissions in the contents of this message, which arise as a result of e-mail transmission. If verification is required please request a hard-copy version. Any views or opinions presented are solely those of the author and do not necessarily represent those of the company.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.






Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2014 by MIDRANGE dot COM and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available here. If you have questions about this, please contact