EBSmap is a utility that can parse and display information about PGP keys and encrypted files. It can provide information such as key type, key length, signature information, expiration date, preferred cipher, preferred hash, etc. It only maps the non encrypted content of message headers. It does not reveal any secure, encrypted data.
For details about the OpenPGP standard, see RFC 4880.
E-Business Server provides mapping programs for z/OS, Unix, Linux and Windows®. On z/OS, it is available for USS, batch jobs, and ISPF. The utility will take, as input, keys and encrypted files of either binary or base64 (a.k.a. ASCII-armored) data. For more information, see the appropriate E-Business Server manual.
Download EBSmap below
*There is a GUI for EBSmap on Windows. For all other platforms, the utility runs via command line.
Linux/Unix EBSmap
Download the corresponding EBSmap:
*The downloaded file is a binary executable. To run EBSmap, issue the following command:
./ebsmap filename
Windows EBSmap
Download Windows EBSmap
*The downloaded file is a MSI installer. Double-click the file and follow the prompts to complete installation.
USS EBSmap
Download the ebsmap
tar file, copy to USS and untar it.
Below are details on how to copy and decompress (untar) a tar file.
1. At this web page, click to download the file ebsmap.tar
2. Transfer that file to z/OS USS via binary FTP:
> ftp ipAddressOfZosMachine
User: username
Password: password
ftp> bin
ftp> put /path/ebsmap.tar /path/ebsmap.tar
ftp> quit
3. On z/OS USS, extract the file ebsmap
:
tar -xvf ebsmap.tar
z/OS EBSmap
Download the ebsmap
transmit file, copy to z/OS, and receive it.
Below are details on how to copy and receive a transmit file.
1. On z/OS, allocate a sequential dataset:
hlq.EBSMAPM.XMIT
, organization PS, format FB, record length 80, block size 3120, space 1 cylinder.
//CREATE1 EXEC PGM=IEFBR14
//DDI DD DSN=hlq.EBSMAPM.XMIT
// DISP=(NEW,CATLG,DELETE),UNIT=SYSALLDA,
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120,DSORG=PS),
// SPACE=(CYL,(1,1))
2. At this web page, click to download the file ebsmapm.xmit
in TSO XMIT format.
3. Transfer that file to the MVS dataset via binary FTP:
> ftp ipAddressOfZosMachine
User: username
Password: password
ftp> bin
ftp> put ebsmapm.xmit 'hlq.EBSMAPM.XMIT' (REPL
ftp> quit
4. On z/OS TSO, receive the file with two commands:
RECEIVE INDSNAME('hlq.EBSMAPM.XMIT')
[ENTER]
DA('hlq.EBSMAP.PDS')
[ENTER]
To run EBSMAP, look below for sample JCL.
//JOBCARD JOB ... -- insert JOB card
//*******************************************************************
//* Map the OpenPGP Messages in the specified file
//*******************************************************************
//*
//* Case matters, keep CAPS OFF
//*
//* Update STEPLIB (or delete if not necessary):
//* Change 'hlq.EBSMAP.LOAD' to the installed EBS LOAD dataset.
//* Update the LE and C/C++ runtime libraries as applicable.
//*
//*******************************************************************
//*
//* Minimum PARM is '/--mvs filename'
//*
//* The input file filename contains the OpenPGP Messages
//* to be mapped.
//*
//* The filename has to be either a fully qualified
//* dataset name or be specified as DD:ddname where
//* ddname is the DDNAME of an allocated dataset
//* within the JCL.
//*
//* If filename is a dataset, then as stated, it must
//* be fully qualified and un-quoted, no prefix is added.
//*
//*******************************************************************
//*
//* Normally C/C++ stdout is directed to SYSPRINT.
//* If directed elsewhere then the JCL has to modified.
//* (Can direct output to a specific file using option --stdout)
//*
//*******************************************************************
//*
//* If option <--bin> or <--b64> is not specified then an attempt
//* is made to dynamically determine if the data is binary or
//* base64 (ARMOR).
//*
//* If a User ID is diplayed (Tag 13), each line will be delimited
//* by double-quotes.
//*
//* The option '--mvs' is always required.
//*
//*******************************************************************
//*
//* Options:
//*
//* --bin
//* Data is binary.
//*
//* --b64
//* Data is base64 encoded (i.e. is ARMOR).
//*
//* --dump256
//* If data for a tag is to be displayed, limits data to the
//* first 256 bytes (takes precedence over --dumpall).
//*
//* --dumpall
//* If data for a tag is to be displayed, display all data.
//* (Default is to display a maximum of 2048 bytes.)
//*
//* --mvs
//* Implies that filename is an MVS file and must be
//* specified either as a fully qualified, unquoted dataset
//* name or of the form DD:ddname.
//*
//* If specified as a dataset name, say A.B.C, then
//* internally will form:
//* //'A.B.C'
//*
//* The batch interface allows DD:ddname format. The USS
//* version of ebsmap does not internallly document this
//* as MVS DDNAME allocations may require special handling
//* to be made available in the USS environment.
//*
//* --show-continued
//* By default does not show or dump continued packets.
//* Use this option to show or dump continued packets.
//*
//* -tag
//* Display hexadecimal data for the specified 'tag' (note the
//* single dash). All tags are mapped, this is to display the
//* packet itself. (See --dump256 and --dumpall)
//*
//* -all the 'tag' is the literal string 'all' to display
//* all tags.
//*
//* -number the 'tag' is a valid Packet Tag number (RFC4880):
//* 1-14,17,18,19
//* For example: -2
//*
//* -keyword the 'tag' is a keyword corrsponding to the tag
//* number:
//* pkesk sig symesk onesig
//* seckey pubkey secsubkey compressed
//* symdata marker literal trust
//* userid pubsubkey
//* userattr symintegrity mdc
//* For example: -sig
//*
//* -x the 'tag' is ther literal character 'x' to display
//* data for unrecognized tags (included with <-all>).
//*
//* --stdout output_file
//* The output_file has the same requirements/restrictions as
//* the input file filename. The output file should be RECFM VB
//* with LRECL 255.
//*
//*******************************************************************
//*
//* Examples:
//*
//* PARM='/--mvs DD:PGPFILE'
//* Map PGP messages in file allocated to DDNAME PGPFILE.
//*
//* PARM='/--mvs A.B.C'
//* Map PGP messages in dataset 'A.B.C'.
//*
//* PARM='/--mvs -13 --stdout DD:MAPOUT DD:PGPFILE'
//* Map PGP messages in file allocated to DDNAME PGPFILE.
//* In addition to mapping Tag(13) messages (User ID Packet)
//* also dump the packet in hexadecimal character format.
//* All output is to go to DDNAME MAPOUT. (If -13 were omitted
//* the packet is would still be mapped, just not dumped in
//* addition).
//*
//*******************************************************************
//*
//MAP EXEC PGM=EBSMAPM,
// PARM='/--mvs DD:PGPFILE' <-- input file
//STEPLIB DD DISP=SHR,DSN=hlq.ebsmap.load <-- EBSmap LOAD dataset
// DD DISP=SHR,DSN=CEE.SCEERUN2
// DD DISP=SHR,DSN=CEE.SCEERUN
//PGPFILE DD DISP=SHR,DSN=hlq.EXPORT.PUBLIC.KEY <- file to be mapped
//*MAPOUT DD DISP=SHR,DSN=hlq.EBS.OUTPUT
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
Resources
E-Business Server
View all the latest E-Business Server resources, including webinars, datasheets, white papers, and more.
Free Trial
Want to see how well E-Business Server can perform on your environment? Your organization can try SDS Software on your system for 30 days, free of charge.