Download
Download
net/publication/220536193
CITATIONS READS
26 3,889
3 authors, including:
Sheng-Uei Guan
La Trobe University; National University of Singapore; Brunel University; Xi'an Jiaotong-Liverpool University
240 PUBLICATIONS 1,996 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Sheng-Uei Guan on 28 May 2014.
1. INTRODUCTION
Commercial activities on the Internet have increased in tandem with the fast growth of the Internet
itself. With electronic commerce (e-commerce), business transactions have been made easier and
faster via the Internet. However, there are still uncertainties and lack of standardized e-commerce
procedures. This has slowed down the acceptance of e-commerce activities online. It would thus be
beneficial if there was some way to streamline and standardize e-commerce.
Agent technology was introduced to e-commerce to provide automation in conducting business
transactions. Agents can perform tasks autonomously on behalf of its user. Hence, an agent
framework and administration infrastructure called SAFER (Secure Agent Fabrication, Evolution
and Roaming) has been proposed (Zu et al, 2000; Guan and Yang, 2002; Wang et al, 2002; Guan
and Zhu, 2002; Ng et al, 2002; Sim and Guan, 2002; Yeo et al, 2002; Wang and Guan, 2000). The
goal of SAFER is to construct open, dynamic, and evolutionary agent architecture for e-commerce.
This solution makes use of software agents to carry out product search and differentiation on behalf
of human owners. It has the potential to allow e-commerce transactions and payment to be carried
out with good security and reliability.
Copyright© 2004, Australian Computer Society Inc. General permission to republish, but not for profit, all or part of this
material is granted, provided that the JRPIT copyright notice is given and that reference is made to the publication, to its
date of issue, and to the fact that reprinting privileges were granted by permission of the Australian Computer Society Inc.
Manuscript received: 19 September, 2002
Communicating Editor: Joan Cooper
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 67
A Modularized Electronic Payment System for Agent-based E-commerce
This paper will elaborate on the design of a modularized payment system for SAFER. It will give
an idea of the various technologies used in the implementation process of the payment system for
SAFER. The background of the research will first be introduced in Section 2 including agent
technology, and current payment schemes. An overview of the SAFER payment system is presented
in Section 3. The modular design of the implemented Java application is then given in Section 4. In
Section 5, a discussion of the implementation is included. The advantages of the design are discussed
and possible technical considerations are explained. Comparison to related work is covered in Section
6. The SET (Loeb, 1998) (Secure Electronic Transaction) protocol is explained in Appendix I.
68 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 69
A Modularized Electronic Payment System for Agent-based E-commerce
1. Need Identification
2. Product Brokering
3. Merchant Brokering
4. Negotiation
5. Payment and Delivery
6. Product Service and Evaluation
These stages may overlap and migrate from one step to another in a non-linear and iterative way.
The model helps provide a solution to identify the role of agents as mediator in e-commerce.
However, there is no automated system today with all these stages. Some pilot research projects
assist various stages of the buying process.
For example, an agent market place system called Kasbah (Chavz and Maes, 1996) was
implemented by the MIT Media Lab using multiple agents that are intended to bring about changes
in the way buying and selling is conducted and doing much of the work on the user’s behalf. Buyers
who need to procure particular goods would create an agent, give it basic strategic direction, and
send it off into the electronic marketplace. The Kasbah agents would then pro-actively seek for
potential sellers and negotiate with them on the buyer’s behalf, based on a set of constraints
specified by the buyer, including a highest acceptable price and a transaction completion date.
However, it is clear that it only covers some aspects of the buying process, i.e. from stage two to
four as listed above. It does not support the payment stage in their systems.
Here, we propose a modularized electronic payment system for agent-based e-commerce,
especially for the SAFER architecture. It combines the agent technology with current payment
schemes described in the previous section. The SAFER payment system does not limit itself to a
fixed method for electronic payment. The payment functionality of agents or the Agent Butler is
extensible and will be able to handle different forms of payment such as payment card or digital
cash, etc. For the current system implementation, SET and E-cash were chosen as the payment
schemes.
70 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
The Agent Butler represents the Cardholder who makes payment using a payment card through
the SET (or E-cash) protocol. The Agent Butler resides in the user’s PC as a static user agent and
has a number of functions (Figure 3) pertaining to agent management and e-commerce. Firstly, the
user interacts with the Agent Butler through the Agent Butler User Interface. Also, the Agent
Butler can dispatch Mobile Agents to remote e-commerce hosts using the Agent Transport module.
It receives messages and shopping information from dispatched agents through its Agent
Receptionist. Finally, it carries out e-commerce transactions and payments through its Financing
Agency.
Financial Institutions consist of bank servers and clearing houses. As depicted in Figure 4, the
Issuer refers to the bank that establishes an account for the owner and issues the payment card or
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 71
A Modularized Electronic Payment System for Agent-based E-commerce
Figure 5: Modules in CA
Figure 6: Modules in Payment Gateway
electronic checks to the account. It guarantees payment for authorized transactions using the
payment card in accordance with payment card regulations. The Acquirer is the bank that
establishes an account with the Merchant Host and processes payment cards or validates
authorizations and transactions. Payment is implemented by a payer paying the payee via the Issuer
and Acquirer (Chavz and Maes, 1996). E-cash server refers to the bank sever that handles issuing
and verification of electronic currency.
Certificate Authority (Figures 3 and 5) is one of the indispensable entities under SAFER. The
Certificate Authority (CA) is the provider of trusted digital certificates (digital certificates are
described in Section 2.1). It runs a Registration Server to handle SET registration requests from
both the Cardholder (Agent Butler) and Merchant Host. The processing of such requests is handled
by the Authentication and Certification module.
The Payment Gateway (Figures 3 and 6) is similar to CA. It runs a Payment Server waiting to
handle SET payment authorization or capture requests from the Merchant. When such requests
arrive, the Payment Processor module processes the request.
Note that before the user or Agent Butler can proceed with any activities, CA, Payment
Gateway, and E-cash Server should be permanently running and waiting for SET or E-cash
transaction requests.
The Merchant Host (Figures 3 and 7) is an online e-commerce retailer that is willing to receive
and run agents through the Shopping Server. It possesses product information in a locally accessible
database for the agent to access and extract data. Each host runs in an autonomous fashion. It can
carry out SET/E-cash transactions with the Agent Butler using the Purchase Server.
The Merchant Host will carry out merchant registration with CA as soon as it is set-up and
running. Only after it has completed registration and obtained SET certification will it be capable
of SET purchase transactions.
72 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
Information Storage
A Database object is owned by the Agent Butler and it stores for the Agent Butler information like
the IP address of the host, the network port number to connect to, etc. Similar information is
provided about the possible CAs that the Agent Butler can register with. It is assumed that as part
of the SAFER community, agents would be fabricated in a remote Agent Factory before being sent
to the owner. Information about the agents that the Agent Butler currently owns would be stored in
the Database too.
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 73
A Modularized Electronic Payment System for Agent-based E-commerce
Another object – the Archive also belongs to the Agent Butler, which is responsible for
recording the past transaction information from the various e-commerce transactions and SET/E-
cash payments.
Financing Agency
In this payment architecture, a subsystem called agency is in place. An agency can be considered as
a multi-layered agent group or a federation of agents with specific goals and functional roles in the
architecture. The Agent Butler is in charge of these subsystems, enabling each with some particular
expertise. When a purchase decision is made, the Agent Butler will activate the Financing Agency
to conduct transactions with the merchant host via certain payment schemes or protocols.
Agent Receptionist
A pair of communication objects handles external socket communications with dispatched agents.
ButlerListener waits for messages or return information from agents in remote hosts while
ButlerCommunicator is capable of sending messages to these agents.
74 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
information about the originating host, etc. All these identity details arise from the need to be
compatible with the SAFER architecture. This means that the agents are not just anonymous byte-
code flowing around, but possess specific capabilities and unique identification to be residents of
the SAFER communities. See Appendix III for details in the implementation of mobile agent.
4.2.2 TaskList
The TaskList is the foreman of the Agent entity, helping an agent to carry out its activities in
sequence. It has a list of various objectives that has been given to the agent before dispatching it to
a host. When the agent comes alive at the host, it will consult the TaskList to carry out the tasks
sequentially in terms of the priority assigned. Such tasks could be as simple as giving an
acknowledgement signal across the network back to its owner or as complicated as accessing the
host database. If a task fails or cannot be carried out, perhaps because the network was down, the
task can be delegated to a later stage and re-invoked when other tasks have been attempted.
The idea of having TaskList is to simulate certain limited ‘intelligence’ in the agent. Further
enhancements could be carried out in possible ways like fine-tuning of the prescribed TaskList
through parameters. This would require the parameters given to be quantified so that the TaskList
can be adjusted based on the values given. A combination of varying parameters may then be used
to achieve a greater degree of change.
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 75
A Modularized Electronic Payment System for Agent-based E-commerce
Figure11: Structure of CA
76 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
Cardholder registration request and the other would wait for a merchant requesting to register. The
Payment Gateway waits for either a payment authorization or a payment capture request from a
host. The separate threads allow simultaneous requests to be serviced at the same time and add to
the robustness of these two servers.
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 77
A Modularized Electronic Payment System for Agent-based E-commerce
78 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 79
A Modularized Electronic Payment System for Agent-based E-commerce
We noticed that the SET protocol based credit card payment method takes longer processing
time than the E-cash payment method. However, this difference is reasonable and also expectable
in our design. Most of the time costs were spent on message exchanges among different entities as
well as the encryption/decryption processing.
The SET protocol aims to provide a more secure guarantee for electronic payment by
specifically separating the communication only to related parties in certain stages of the payment
process and encrypting all the messages exchanged among different entities. In the payment
confirmation stage, the Owner, Merchant Host, Payment Gateway and Certificate Authority are all
involved in message exchanges. In addition, the Payment Gateway and Certificate Authority are
requested to validate the Owner’s payment information (the Owner’s account related information)
before the Merchant can send out the payment confirmation to the SET payment agent. The whole
process is time consuming.
In comparison, the E-cash payment method has a more simplified process. When the Merchant
receives the E-cash notes, it only needs to contact the E-cash bank server to deposit the E-cash. The
bank server will do the validation process. If all the E-cash notes are valid, the bank will send the
Merchant a deposit confirmation, so that the Merchant can send the payment confirmation to the E-
cash payment agent to complete the payment. The E-cash payment method is more efficient than
the SET-based credit card payment method, which instead is more secure. However, since the E-
cash bank server needs to validate the E-cash notes one by one, when there are a lot of E-cash notes
used, the processing time for the E-cash payment method will increase to some extent.
Based on these facts and analysis, therefore, we highly recommend using the E-cash payment
method for small-amount transactions in our design for efficiency and cost saving concern, and
using the SET-based credit card payment method for large-amount transactions.
80 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 81
A Modularized Electronic Payment System for Agent-based E-commerce
Table 2 is presented for the purpose of comparing the SAFER payment system with some related
works.
BABSy does not provide a flexible framework that allows more payment mechanisms to be
added in future, since adding a new payment method requires modifying the whole user agent. In
addition, this approach does not facilitate reusability, since all functionalities are encapsulated
inside a single agent of each party.
ABPS is also centralized to some extent. Except for the payment agent in ABPS, software
agents are not explicitly used by participants in their systems. The heavy burden of managing an
ever-increasing knowledge base and the growing load for the single payment agent server would
be a problem. Our payment scheme avoids a centralized architecture. Instead, we make use of
cooperative multi-agents. Different types of agents are clearly defined and are embedded with
certain functional modules as well as decision-making logic according to their roles in the
system.
The focus of Eleanor is corporate users and financial institutions. It is more like a clearing-
house, or a third party that handles bank-to-bank transactions. Our payment architecture is to
provide business-to-consumer payment solutions.
The objective of MPF is to provide the capabilities to support multiple payment options for
merchants. Therefore merchants in their system are able to deal with consumers who pay in a way
that may be different from each other. Our payment architecture is to allow consumers to be able to
use different payment methods to pay when they deal with different merchants. MPF and our
payment architecture both address the issue of bridging different payment methods between
merchants and consumers, but from different perspectives. MPF addresses the problem from the
merchant’s perspective by providing multiple payment capability on the merchant side. Our system
addresses the problem from the consumer’s perspective by providing multiple payment capabilities
on the consumer side. These two systems should complement each other to provide the greatest
flexibilities to all entities involved in e-commerce.
In terms of design, MPF has a similar approach as our agent based payment architecture. It has
a modular design and some common interfaces. So different payment methods can be added easily.
But their framework does not provide intelligence to choose the best payment option from the
merchant’s view. In contrast, our system has the capabilities to automatically choose the best
payment option for the consumers by using agents based on defined rules.
82 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
REFERENCES
AN OVERVIEW of Public-Key Encryption and Digital Signatures: http://www.hack.gr/users/dij/crypto/overview/public
key.html
BIGUS, J. P. (1998): Constructing intelligent agents with Java, John Wiley, 182–342.
BRANDS, S. (1995): Electronic cash on the internet. Network and distributed system security, Proc. of the Symposium,
64–84.
CHAVZ, A. and MAES, P. (1996): MIT Media Lab, Kashbah: An agent marketplace for buying and selling goods, Proc. of
1st International Conference on the Practical Application of Intelligent Agents and Multi-Agent Technology, London,
UK, 1996.
GUAN, S.U. and YANG, Y. (2002): SAFE: Secure-roaming agents for e-commerce, Computers & Industrial Engineering
Journal, Elsevier Science, 42: 481–493.
GUAN, S.U. and ZHU, F. (2002): Agent fabrication and its implementation for agent-based electronic commerce,
International Journal of Information Technology and Decision Making (IJITDM), ISSN: 0219-6220, 7(6): June.
GUTTMAN R.H. and MAES, P. (1998): Agent-mediated negotiation for retail electronic commerce, agent mediated
electronic commerce, Proc. of 1st International Workshop on Agent Mediated Electronic Trading.
HO, D., CHIENG, I. (2000): A mobile agent brokering environment for the future open network marketplace”, Proc. of the
7th International Conference on Intelligence in Services and Networks, IS&N, 3–15.
HUA, F. and GUAN, S.U. (2000): Agents and payment systems in e-commerce. In RAHMAN, S.M. and BIGNALL, R.J.
(Eds.), Internet commerce and software agents: Cases, technologies and opportunities, IDEA Group Publishing, 317–330.
IBM WebSphere Payment Manager (1998): ftp://ftp.software.ibm.com/software/websphere/commerce/paymentsw/paym
gr313install.pdf
IDENTRUS and its Project Eleanor (2003): http://www.identrus.com/services/eleanor.html
JCA/JCE Application Programming Interface Overview: http://www.openjce.org/docs/jce_api_overview.html
LOEB, L. (1998): Secure electronic transactions: Introduction by technical reference, Boston, Artech House.
McGRAW, G. and FELTON, E. (1997): Java Security, John Wiley.
MJOLSNES, S.F. and MICHELSEN, R. (1997): CAFÉ. Open transactional system for digital currency payment. Proc. of
the 13th Hawaii International Conference on System Sciences, 5: 198–207.
NELSON, J. (1999): Programming mobile objects with Java, John Wiley, 466–469.
NG, C.H., GUAN, S.U. and ZHU, F. (2002): Virtual marketplace for agent-based electronic commerce, Book Chapter:
Architectural issues of web-enabled electronic business, edited by NANSI, S., Idea Group Publishing.
NWANA, H.S. (1996): Software agents: An overview, Knowledge Engineering Review 2(3): 1–40.
POH, T.K. and GUAN, S.U. (2000): Internet-enabled smart card agent environment and applications, in the book: Internet
commerce and software agents: Cases, technologies and opportunities, Idea Group Publishing.
ROCKINGER, R. and BAUMEISTER, H. (2000): BABSy: Basic agent framework billing system, Proc.of the
International ICSC Symposia on Multi-Agents and Mobile Agents in Virtual Organizations and E-Commerce
(MAMA’2000), Wollongong, December.
RUSTY, H. E. (1997): Java network programming, O’Reilly, 242–261.
SIM, L.W. and GUAN, S.U. (2002): An agent-based architecture for product selection and evaluation under e-commerce,
Book Chapter: Architectural issues of web-enabled electronic business, edited by NANSI, S., Idea Group Publishing.
The SET Standard Book 1 Business Description, http://www.setco.org/download.html/#spec
WANG, X.F. (1999): Secure agent-mediated auctionlike negotiation protocol for internet retail commerce, Proc. of the 3rd
International WorkShop. CIA’99, 291–302.
WANG, T.H. and GUAN, S.U. (2000): An agent based auction services for electronic commerce, Proc. of International
ICSC Congress on Intelligent System & Applications, CD #1524-045.
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 83
A Modularized Electronic Payment System for Agent-based E-commerce
WANG, T., GUAN, S.U. and CHAN, T.K. (2002): Integrity protection for code-on-demand mobile agents in e-commerce,
Journal of Systems and Software, 60(3): 211–221.
WONG, O. and LAU, R. (2000): Possibilistic reasoning for intelligent payment agents, Proc. of the Second Workshop on AI
in Electronic Commerce (AIEC), 1–13.
YANG, Y. and GUAN, S.U. (1999): Intelligent mobile agents for e-commerce: Security issues and agent transport, In
RAHMAN, S.M. and RAISINGHANI, M. (Eds.), Electronic commerce: opportunities and challenges. Idea Group
publishing, 321–336.
YEO, W.C., GUAN, S.U. and ZHU, F. (2002): An architecture for authentication and authorization of mobile agents in e-
commerce, Book Chapter: Architectural issues of web-enabled electronic eusiness, edited by NANSI, S., Idea Group
Publishing.
YOULL, J. (2001): Agent-based electronic commerce: Opportunities and challenges, Proc. of the 5th International
Symposium on Autonomous Decentralized System, 146–148.
ZHU, F.M., GUAN, S.U. and YANG, Y. (2000): SAFER E-commerce: A new architecture for agent-based electronic
commerce, in the book: Internet commerce and software agents: Cases, technologies and opportunities, Idea Group
Publishing.
After the Cardholder shops at the Merchant’s website, it initiates a purchase request to the
Merchant (Figure 19). The two parties authenticate each other’s identity by exchanging their SET
certificates and the Cardholder transmits the encrypted order and payment information to the Merchant.
84 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
The Merchant uses this payment information to make a payment authorization request to a
Payment Gateway. If these payment instructions are approved, a capture token is sent to the
Merchant. After completing the processing of an order, the Merchant can request the actual
payment. The payment sum would usually be directly credited into the Merchant’s bank account
from the card Issuer. There would normally be a significant time lapse between Payment
Authorization and Payment Capture in accordance to normal financial transaction procedures.
To initiate the Payment Capture process, a capture request would first have to be generated by
the Merchant. This includes information such as the total payment amount, the transaction
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 85
A Modularized Electronic Payment System for Agent-based E-commerce
identifier, etc. The request together with the capture token from the earlier Payment Authorization
process are encrypted using the Payment Gateway’s public key. When the Payment Gateway
receives the capture request, it decrypts the request message and capture token. It verifies if both
have consistent payment information, and then uses the information to format a clearing request that
is sent to the card Issuer to carry out the actual credit transfer through financial networks.
86 Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004
A Modularized Electronic Payment System for Agent-based E-commerce
BIOGRAPHICAL NOTES
Steven Guan received his MSc and PhD from the University of North Carolina
at Chapel Hill. He is currently with the Electrical and Computer Engineering
Department at the National University of Singapore. Professor Guan worked
in a prestigious R&D organization for several years, serving as a design
engineer, project leader and manager. He has also served as a member on the
ROC Information and Communication National Standard Draft Committee.
After leaving industry, he joined Yuan-Ze University in Taiwan for three and
half years. He served as deputy director for the Computing Center, and also as
the chairman for the Department of Information and Communication Steven Guan
Technology. Later he joined La Trobe University in Australia with the
Department of Computer Science and Computer Engineering where he helped
to create a new Multimedia Systems stream.
Feng Hua received her BSc degree from Beijing Polytechnic University,
China in 1999. In 2002, she received her MSc of Engineering from the
National University of Singapore. Her research interests include electronic
commerce, software agents, and secure electronic payment systems. She is
currently with Hewlett Packard Pte Ltd, Singapore as an IT engineer.
Sin Lip Tan received his BSc degree from the National University of
Singapore in 2002. His research interests include electronic commence and
software agents. He is currently working in the IT industry. Feng Hua
Journal of Research and Practice in Information Technology, Vol. 36, No. 2, May 2004 87