Featured Post

15 Python Tips : How to Write Code Effectively

Image
 Here are some Python tips to keep in mind that will help you write clean, efficient, and bug-free code.     Python Tips for Effective Coding 1. Code Readability and PEP 8  Always aim for clean and readable code by following PEP 8 guidelines.  Use meaningful variable names, avoid excessively long lines (stick to 79 characters), and organize imports properly. 2. Use List Comprehensions List comprehensions are concise and often faster than regular for-loops. Example: squares = [x**2 for x in range(10)] instead of creating an empty list and appending each square value. 3. Take Advantage of Python’s Built-in Libraries  Libraries like itertools, collections, math, and datetime provide powerful functions and data structures that can simplify your code.   For example, collections.Counter can quickly count elements in a list, and itertools.chain can flatten nested lists. 4. Use enumerate Instead of Range     When you need both the index and the value in a loop, enumerate is a more Pyth

How to Decode TLV Quickly

TLV format contains three parts Tag, Length, and value. In a credit card or financial transactions, the TLV protocol supports this format. Below, you will find the ideas to decode TLV data quickly. 


According to IBM, the tag tells what type of data it is. The length field denotes the length of the value. The value-field denotes the actual value.


Structure of TLV.


TLV comprises three field values.


  1. Tag
  2. Length
  3. Value


How to Decode TLV


Decoding of TLV


The EMV labs developed tags which in turn part of EMV protocol. Each tag has an unique meaning. And the Tag and Length together takes 1 to 4 bytes of memory.

1. The Best example for TLV.


Below is the way to decode the EMV tag. The first part of the TLV format is TAG. The second part is LENGTH, and finally the VALUE.


Syntax of EMV tag:


[Tag][Value Length][Value] (ex. "9F4005F000F0A001")


where, 


Tag Name = 9F40


Value Length (in bytes) = 05 


Value (Hex representation of bytes. Example, "F0" – 1-byte) = F000F0A001


Finally, what is 9F40 tag? The EMV company assigns a value to it. Check out the complete list of EMV Tags and meanings.



2. How to read the TLV


Let me elaborate on the memory the EMV tag takes. The breakup of memory allocation is as below.

 

Tag: 1 or 2 bytes.


Length: 05


Value length:


F0-00-F0-A0-01 ==> 5 Bytes


The F0 is the HEX value of length 1. So the total length of the value altogether is 5 bytes.


F0+00+F0+A0+01= Total 5 bytes



Related

Comments

Popular posts from this blog

How to Fix datetime Import Error in Python Quickly

SQL Query: 3 Methods for Calculating Cumulative SUM

Python placeholder '_' Perfect Way to Use it