×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




Hi all

Scott Klement has some code that displays which algorithms are supported on the release you are running. At V5R1, there are only 4 of them (MAC, MD5, SHA-1, and DES (two-way).

At V5R3 there are 10 more.

I need to know what the algorithms are at V5R2 - maybe it's documented somewhere, I looked in MTU - nothing there. I don't have the MI docs for CIPHER at V5R2, InfoCenter doesn't have them anywhere that're obvious to me.

Here is an amended version of Scott's code, usable at V5R1 and on - his takes advantage of LIKEDS in data structure subfields, which wasn't available that far back.

Maybe someone still has a V5R2 system/partition - if so, please compile and run this code and let me know the results.

Much appreciated!
Vern

H DFTACTGRP(*NO) BNDDIR('QC2LE')

D Crypto_Attr_T ds qualified based(ptrCryptoAttr)
D algorithm 2A
D key_length 5I 0
D bitflags 2A

D MMTR_01C8_T ds qualified based(ptrMMTR01C8)
D numEntries 5I 0
D entries like(Crypto_Attr_T) dim(100)

D MMTR_Template_T...
D ds qualified based(Template_Only)
D Template_Size 10I 0
D Bytes_Used 10I 0
D Crypto_Attrs like(MMTR_01C8_T)

D MMTR_CRYTPOGRAPHY...
D C 456

D GetAlgName PR 45A varying
D Algorithm 2A const

D matmatr pr extproc('matmatr')
D receiver likeds(MMTR_Template_T)
D attr 5I 0 value

D r ds likeds(MMTR_TEMPLATE_T)
D x s 10I 0
D msg s 52A

/free

ptrMMTR01C8 = %addr(r.Crypto_Attrs);

r.Template_Size = %size(r);
matmatr(r: MMTR_CRYTPOGRAPHY);

for x = 1 to MMTR_01C8_T.numEntries;
ptrCryptoAttr = %addr(MMTR_01C8_T.entries(x));

msg = %char(Crypto_Attr_T.key_length) + '-bit ' +
GetAlgName(Crypto_Attr_T.algorithm);
dsply msg;
endfor;

*inlr = *on;

/end-free


*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
* GetAlgName(): Get Algorithm Name
*
* Algorithm -- Algorithm returned by MATMATR MI function
*
* Returns a human-readable algorithm name
*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
P GetAlgName B
D GetAlgName PI 45A varying
D Algorithm 2A const
/free

select;
when Algorithm = x'0001';
return 'MAC - Message Authentication Code';

when Algorithm = x'0002';
return 'MD5';

when Algorithm = x'0003';
return 'SHA-1 - Secure Hash Algorithm';

when Algorithm = x'0004';
return 'DES (one-way) - Data Encryption Standard';

when Algorithm = x'0005';
return 'DES (two-way) - Data Encryption Standard';

when Algorithm = x'0006';
return 'RC4';

when Algorithm = x'0007';
return 'RC5';

when Algorithm = x'0008';
return 'DESX';

when Algorithm = x'0009';
return '3DES - Triple DES';

when Algorithm = x'000A';
return 'DSA - Digital Signature Algorithm';

when Algorithm = x'000B';
return 'RSA - Rivest/Shamir/Adleman';

when Algorithm = x'000C';
return 'Diffie-Hellman';

when Algorithm = x'000D';
return 'CDMF - Commercial Data Masking Facility';

when Algorithm = x'000E';
return 'RC2';

when Algorithm = x'000F';
return 'AES - Advanced Encryption Standard';

other;
return 'Unknown';
endsl;

/end-free
P E


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 by midrange.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 on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.