Professional Documents
Culture Documents
Content
ABOUT .............................................................................................................................................. 3
1. INTRODUCTION ........................................................................................................................... 4
2. FORMAT DESCRIPTION (MAINFORMAT_00.txt file).................................................................... 4
2.1. FIELD NAME ............................................................................................................................. 5
2.2. ENCODING: .............................................................................................................................. 5
2.3. LENGTH.................................................................................................................................... 5
2.4. REPETITIONS OF A FIELD (times:) ............................................................................................ 7
2.5. BITMAP .................................................................................................................................... 8
2.6. CONDITIONAL FIELD PARSE(present:) ..................................................................................... 9
2.7. MULTIPLY LENGTH (multiplyLen:) ......................................................................................... 10
3. CATALOGS ................................................................................................................................. 11
4. SUBFIELDS ................................................................................................................................. 12
5. FIELD COMMENTS ..................................................................................................................... 14
6. SHORTCUTS ............................................................................................................................... 14
APENDIX A ......................................................................................................................................... 14
2
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
ABOUT
This material has been created and distributed by Red Sky Technologies for informative proposes
about its software and its been disbtributed under license. This document is protected under
international Copyright laws. Any partial or total reproduction is forbidden without signed
consent of Red Sky Technologes SA de CV.
3
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
1. INTRODUCTION
Galaad is a software that was developed to parse hex messages of many common protocols,
including ISO8583, pinpad commands, network protocols, etc.
It works by using text files. In those files message definition is captured so it can be reused to
parse any hex message.
Al fields mus be listed in order to add them to message format template to parse, like a header,
version, ETX, etc. Once captured message description it would be used to parse, find errors, edit
messages by han and simulate any specific test situation.
Message description pretends to be a notation, so it could allow easy and speed protocol capture
in order to ease development and message analisys.
SOFTWARE DOES NOT REQUIRE EXPLICIT INSTALATION s you just have to accept software license
and select working directory (the working directory where the message folder are).
To parse you will have to capture or paste hex text on corresponding textbox, select columns you
want to display and select format to parse.
+FIELD NAME
4
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
bitmap:
times:
present:
length:
encoding:
multiplyLen:
A format should contain one or more fields. Here we ar going to describe every part in a field
description.
*Not all params are required. Only encoding and length are.
Field name is the text that is going to appear in field name column and is always preceded by +
sign. This param is required.
2.2. ENCODING:
Is the field encoding that is gonna be used to parse hex values. In this case is hexadecimal (HEX),
so on encoding column you will se the same hex values. Posible encodings are
HEX(Hexadecimales), ASCII, EBCIDIC, UTF-8, BCD, etc*. This is a required param.
2.3. LENGTH
This param indicates number of nibbles to take for a field, and can be:
Fixed: If fixed it is captured in half bytes (Nibble) As an example if a field length is two
bytes it should be captured as 4.
Readed: If length is readed from another field, you should capture field name like this:
length:from=ANOTHER FIELD
Stopped by char: If field length is unknown and you have to search for a byte to determine
field stop, you could do it with the following notation:
5
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
length:to=03
if you want to stop field length when byte 0x03 is fond.
You can also specify a nibble to stop like this:
Length:to=X3
Which in this case will stop on any byte that have 3 on its second nibble like: A3, B3, and
03 as an example.
In the following example field HTML Verb will be readed until HEX value 0A is found 0A
(\n on ASCII).
6
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
But with an input like:
03 04 31 30 25 58 12 0A 14
Fixed: number of times a TOKEN field should be try to parsed one after the other.
7
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
Readed from another fiedl: If number of times a field should be repeated is ruled by
another field you could specify it by the following notation:
times:from=FIELD NAME
2.5. BITMAP
Bitmap paraeter determines if a field is a bitmap to decide if its bitmap dependent fields will be
parsed or will be ignored. Its sintax on format is: bitmap:true
Por ejemplo:
A format like the above will produce the following output on parser:
8
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
For more information on way bitmaps operate for messages refer to ISO 8583 documentation.
present:FIELD NAME.
Where, FIELD NAME should be replaced with bitmap fields name from wich the current field
should decide if parsed or not (one that has a property bitmap:true).
9
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
In image the example field is 2_PAN (Primary
Account Number), whose precense depends on
field PRIMARY BITMAP.
By the way, if as an example readed length is 4, but its encoding is BCD (Binary Coded Decimal)
multiplyLen should be set as multiplyLen:1, but thats its default behavior so it can be
skipped.
Field ADP_DATA takes its length from LENGTH_ADP whose length will also multiplyed by 2, so
if readed length is: 8, ADP_DATA will read not just 8 nibbles:
30 31 32 33 34 35 30 31 20
10
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
30 31 32 33 34 35 30 31 20
3. CATALOGS
You can asociate a catalog value to an specific feild to give meaning to the value obtained before
decoding (encoding: ASCII, EBCDIC, etc.) and that value can be seen on CATALOGS column on
parser as reference value.
To create and build a catalg you need a text file inside format name field. Catalog file must have
the exact same name of field with a .txt extension.
You should create a field inside format name folder (in this case TESTS folder) whose name will
be PROCESSING CODE with the values that parser could find separated with an space to the
meaning it would have if value from that row is found while parsing.
Whit that information when parser is resolving PROCESSING CODE field it will compare the value
obtained before deconding (as ASCII in this case) with PROCESSING CODE.txt catalog values and
if found a coincidence it will display it on CATALOG column as following:
11
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
4. SUBFIELDS
Subfield function is a GParser feature that allows to group fields inside other to help to esay read
fields and in some cases less repetitive.
Supose we have a field whose name is ID MESSAGE as first field of certain message:
But its 15 bytes (30 nibbles) could be composed by other parameters that could be threated
sepparatedly like as an example VERSION, SENDER and RANDOM NUMBER. So you could do
the following:
12
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
Notice that the sum of all those new subfields length (VERSION, SENDER, RANDOM
NUMBER) corresponde with its original parent field length (ID MESSAGE).
Also notice that parent field has no length anymore becouse it will be taken always from the sum
of the its child fields length.
13
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
5. FIELD COMMENTS
It is posible to add comments to field to any propose. To add a comment to a field it should be
preceded by double slash(//) as followingh:
Where row //first field is id message will be ignored by parser. Also it is important to mention
that only complete rows can be ignored.
6. SHORTCUTS
Double click on fields name:
Double click on fields name on list of available formats will open MAINFORMAT_00.txt file for to
edit. Before that modification you can press Refresh button to parse with new modifications you
have done over format.
Parser will open Format folder on Windows explorer to allow you add catalgos or any modification
you want.
APENDIX A
List of available encodings to parse was generated from available encoding on .NET Framework
(for more information please visit https://msdn.microsoft.com/en-
us/library/system.text.encoding.getencodings(v=vs.110).aspx)
14
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
15
USERS MANUAL FOR GALAAD PARSER
Versin 1.5
16