29.11.2014 Views

a new architecture for secure two-party mobile payment transactions

a new architecture for secure two-party mobile payment transactions

a new architecture for secure two-party mobile payment transactions

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Java ME/CLDC: java.math.BigInteger and java.security.SecureRandom (Rittinghouse &<br />

Ransome, 2004). These <strong>two</strong> classes have the same names as the core classes in Java SE but<br />

function differently to the core Java classes in Java SE. A collision will occur when JDK is<br />

used to compile the code importing these <strong>two</strong> classes. To avoid this collision, one method<br />

is to employ some software such as Proguard 4 to make an obfuscation on the code. The<br />

compiler is able to find the target classes without confusing the different classes with the<br />

same name, then avoids the conflict that occurred.<br />

In developing SA2pMP, the Bouncy Castle Cryptography with version of 1.42 was<br />

employed. The implementation of cryptography algorithms makes use of the Java ME<br />

lightweight API package in Bouncy Castle. Proguard is employed in the development as<br />

indicated above. Proguard 4.0 has already been bundled in NetBeans IDE, so this was an<br />

easy choice.<br />

5.2 Simulation Implementation<br />

A <strong>mobile</strong> bank is employed as a scenario <strong>for</strong> system simulation. The banking transaction<br />

of money transfer is assumed to describe how the system works. Readers should notice that<br />

in the following:<br />

• “− >” means a data transfer process.<br />

• “+” means a data combination operation. In this implementation, most + operations<br />

denotes simple concatenation of the strings.<br />

4 http://proguard.source<strong>for</strong>ge.net/<br />

105

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!