midrange.com code scratchpad
Name:
Decryption of encodedtokenexchange using OPENSSL AES128 Algorithm in RPGLE Program
Scriptlanguage:
Plain Text
Tabwidth:
4
Date:
11/10/2019 08:59:32 am
IP:
Logged
Description:
still it's not decrypting
Code:
  1.      FUNIX      IF   F 1000        SPECIAL PGMNAME('UNIXCMD')
  2.      F                                     PLIST(UNIXPARM) USROPN
  3.      FQSYSPRT   O    F  132        PRINTER
  4.      dencodedExcha...
  5.      dngeToken         s             88
  6.  
  7.      D cmd             s           5000a
  8.      D mode            s              1A   inz('P')
  9.  
  10.      D record          ds          1000
  11.      D outrec          ds           132
  12.  
  13.      C     UNIXPARM      PLIST
  14.      C                   PARM                    CMD
  15.      C                   PARM                    MODE
  16.       /free
  17.  
  18.              //XML-INTO encodedExchangeToken %XML('/home/I0RS01HU/+
  19.              ///INPUT.xml':'doc=file case=any path=+
  20.              //TokenExchangeResponse/encodedExchangeToken');
  21.              encodedExchangeToken =
  22.                'u3VtNgfyWU9faZc3Iaa8ZWbE5UZCfmC17yA4MyW'
  23.                 + '0ghflt9dNQNDpCcgMZiG/kXPE4vv2CHL93B4iKiODHxxdVA==';
  24.              cmd = 'echo ' + '''' +  encodedExchangeToken + ''' | openssl +
  25.                 enc -d -aes-128-ecb -K 363631653237354f494d31554c594c4a +
  26.                 -nopad -nosalt -base64 -A';
  27.                 open UNIX;
  28.                 read UNIX record;
  29.                 dow not %eof(UNIX);
  30.                    outrec = record;
  31.                    write QSYSPRT outrec;
  32.                         read UNIX record;
  33.                              enddo;
  34.  
  35.                              close UNIX;
  36.                              *inlr = *on;
  37.                          /end-free
  38. **********************************
  39. EVAL cmd                                                                     
  40. CMD =                                                                        
  41.           ....5...10...15...20...25...30...35...40...45...50...55...60       
  42.      1   'echo 'u3VtNgfyWU9faZc3Iaa8ZWbE5UZCfmC17yA4MyW0ghflt9dNQNDpCc'      
  43.     61   'gMZiG/kXPE4vv2CHL93B4iKiODHxxdVA==' | openssl enc -d -aes-12'      
  44.    121   '8-ecb -K 363631653237354f494d31554c594c4a -nopad -nosalt -ba'      
  45.    181   'se64 -A                                                     '      
  46.    241   '                                                            '      
  47.    301   '                                                            '      
  48.    361   '                                                            '      
  49.    421   '                                                            '      
  50.  
  51.  
  52.  
  53.                               Evaluate Expression                               
  54.                                                                                 
  55.  Previous debug expressions                                                     
  56.                                                                                 
  57.  > EVAL record                                                                  
  58.    RECORD =                                                                     
  59.              ....5...10...15...20...25...30...35...40...45...50...55...60       
  60.         1   'u3VtNgfyWU9faZc3Iaa8ZWbE5UZCfmC17yA4MyW0ghflt9dNQNDpCcgMZiG/'      
  61.        61   'kXPE4vv2CHL93B4iKiODHxxdVA== | openssl enc -d -aes-128-ecb -'      
  62.       121   'K 363631653237354f494d31554c594c4a -nopad -nosalt -base64 -A'      
  63.       181   '                                                            '      
  64.       241   '                                                            '      
  65.       301   '                                                            '      
  66.  
  67. > EVAL outrec                                                                  
  68.   OUTREC =                                                                     
  69.             ....5...10...15...20...25...30...35...40...45...50...55...60       
  70.        1   'u3VtNgfyWU9faZc3Iaa8ZWbE5UZCfmC17yA4MyW0ghflt9dNQNDpCcgMZiG/'      
  71.       61   'kXPE4vv2CHL93B4iKiODHxxdVA== | openssl enc -d -aes-128-ecb -'      
  72.      121   'K 3636316532'                                                      
  73.                                                                         Bottom 
  74. Debug . . .                                                                    
  75.                                                                                
  76. F3=Exit   F9=Retrieve   F12=Cancel   F16=Repeat find   F19=Left   F20=Right    
© 2004-2019 by midrange.com generated in 0.01s valid xhtml & css