Systems And Methods For Authenticating Network Messages
Abstract:
Networks and methods for use in authenticating messages, based on the clients and the computing devices, are provided. One exemplary method generally includes performing, by an API gateway, validation of a computing device based on a certificate identifying the computing device as one of the recognized computing devices, via the repository, and performing, by the API gateway, validation of the client based on the client certificate via a global access manager, separate from the repository. The exemplary method further includes causing a security token indicative of the client to be generated, when the computing device and the client are validated, whereby the security token is indicative of the client and permits the message, from the client, to be delivered to one or more backend services.
Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims priority to arid the benefit of the filing date of
LIS. Application Serial No. i4/942,048, filed November' 16,2015. which is hereby
incorporated by reference in its entirety,
FIELD
The present disclosure generally relates to systems and methods for use
In authenticating messages, for example, network messages, including authenticating
messages from clients, and further authenticating computing devices through which
the messages are passed.
BACKGROUND
This section provides background information related to the present
disclosure- which is not necessarily prior art.
Payment networks are provided for various different types of
messaging to and from clients, such as merchants,' acquirers, issuers, and other
entities, and further, in certain Instances, among the clients. Because the messages
-generally include sensitive and/or confidential data, or seek access to sensitive and/or
confidential data, known payment .networks, employ a variety of encryption
techniques to protect the data, and may further dictate security conditions for
messaging to and/or from the payment networks. Also, payment networks are known
to employ security hierarchies, whereby as messaging progresses between different
25 network parts or zones within the payment network, continued authentication of the
message is needed to ensure security of the payment network.
DRAWINGS
The drawings described herein are for illustrative purposes only of
30 selected embodiments and .not all possible implementations, and are not intended to
limit the scope of the present disclosure.
2
FiG. i is a block diagram of an exemplary system of (he present
disclosure, including a payment network suitable to authenticate messages transmitted
to the payment network;
FIG. 2 is a biock diagram of a computing device, that may be used in
5 the exemplary payment network illustrated in FIG. I; and
FIG. 3 is an exemplary •method,, which may be implemented in the
payment network illustrated in FIG. 1, for authenticating messaging therein.
Corresponding reference numerals indicate corresponding parts
•throughout the several views of the drawings.
10
DETAILED DESCRIPTION
Exemplary embodimentswii! now be described more fully with
reference to the.accompanying drawings. The description and specific examples
included herein, are intended for purposes of illustration, only and are not intended to
15 limit, the scope of the present disclosure,
Payment networks provide a variety of services, which may relate to
payment account transactions and/or use of transaction date, that rely on access to the
payment networks by one or more other entities (broadly, clients), both internal and
•external, etc. Access is provided in the form of messages received, by the payment
20 network, from the clients. As described herein, each of the messages includes a.
security certificate, which is utilized by the payment .network to authenticate the
clients. Moreover, the networks (e.g., payment networks, etc.) and methods herein
authenticate .messages (e.g., application programming interface (API) messages, etc.)
at multiple levels, in particular, when a message is received at the payment network
25 from a client, a computing device appends the client certificate to the message as an
object, and further appends its own certificate to the message, prior to transmitting the
message onto an API .gateway. In turn, the API gateway validates the certificate of
the computing device .(from which the API.gateway received the message), based on a
local repository within the API gateway, and further validates the client certificate,
30 i.e., the appended object, via a global access manager apart from the API gateway.
Upon'the multi-level authentication (e.g,t at the client level and the computing .device.
level, etc.), the API gateway causes a security token to be generated, which is
indicative of the client and usable within the payment network to access backend
servers and/or services provided thereby. In this manner, security is enhanced to keep
transaction data and other data within the payment network protected from
unauthorized access,
110 1 illustrates an exemplary system 100 m which one or more
aspects of the present disclosure ma\ be implemented. Although p iris of the system
5 ItiO are presented in one arrangement, it should he appreciated that other exemplar}
embodiments ma} nivUide the same or di Herein parts arranged ot he! wise, tot
example, depending on \aiidaiion of'messaging TO the p.n ment network, eii*.
As show n in l-'KJ. 1. the dJusluled system 100 generally includes a
merchant 102, an acquirer 104. a pay ment network 106. and an issuer loS, each
10 coupled to nciwoik 1 in. The network 110 may include. v\ ithont limitation, a w to the a^qrmet 10-1 and the issuer 108 and,
separately. a network thtougH w hich the pay nient network SOt? and merchant 102 may
20 eommumeaie u.g . <. ta a web-based application, ets.1
in gentral. in 110. 1, the merchant 10? offers one or \arsons products'
fc.LT,, goods and or services, ete k for sale to a consumer. In order to purchase
products, the consumer presents a pay ment dt\iee t associated with a payment
account) so the mors hum 102. In turn, the merchant !. and the issuer J 08 cooperate, m response to the consumer. to
eomplele a transaction {biouJK. a purchase isausacdon) for the piodnct using the
consumer's payment account. As pan of the put chase transaction, the merchant 102
reads the payment de\ fee and communicates, via the network 1 10, an anihori/aiioii
request to the payment network 106. via the acquirer KM (associated with the
30 merchant 102). to process the transaction (*,' ,c, u&inu the MasterCards interchange.
etc,}, ihe payment network 10v, m ttnu, communicates; the authoti/ation request to
the issuer 108 tas&octated w iih the consumer's pdy men! account) '1 he issuer 10^ then
pro\ ides an authorization response w s,r, authorizing or declining the request* to the
payment netwoik K>o, which ib provided back through the acquirer 104 to the
merchant 102, 'The transaction with ike consumer is then completed, or not, by the
merchant 102, depending on the authorization response. If the transaction is
completed, the purchase transaction is later cleared and settled by and between the
merchant 102 and the acquirer 104 (in accordance with a settlement arrangement,
5 etc.), and by and between the acquirer 104 and the issuer 10S (in accordance with
another settlement arrangement, etc.),
The above is a brief description of a transaction to the payment
network 106, which is provided for purposes of illustration of the payment network's
interactions with other entities. It should be appreciated that multiple messages are
10 directed to the payment network 106 in the above transaction*.and further messages
may he directed to the payment network 106 as the transaction is subjected to
additional services. For example, .if the payment account to which the transaction is
directed is subject to 3D secure services, one or more additional messages may be
directed to the payment network 106 (and specifically a directory Backend service
15 therein} to authenticate the consumer, prior to authorizing the transaction,
Further, as part of the transaction above, and. multiple •transactions like
it, transaction data is generated among the merchant 102, the'acquirer 104, the
payment network 106, the issuer 108, and the consumer. Depending on the
transaction, the transaction data may include, without limitation, payment account
20 numbers, merchant IDs, acquirer IDs, terminal IDs, merchant category codes (MCCs)
assigned to the merchant 102 (e.g.. by the payment, network 106, etc.), time stamps,
etc. Once generated, the transaction data is stared in one or more different entities of
the system 100, and specifically the payment network 106 (e.g., in a. data center (not
shown1! or otherwise)
25 The tian*action data may fun her pu>\ tdv; a bast* Tor a \artety of
sen ice:* o tiered b> the payment network 106. ihtousiii a baekend terser and or
sen. sees ntlered thereby. Such sen ices may relate to, for euimpie. fraud protection,
Linaiyties. marketing insight*, rewards, etc 1 he services may be provided to the
entities shown tn FIG. i. or duplicates thereof >>r to other parts, such as, for example.
30 ihu'd parties dun act m cooperation wuh one or more of the entities of I 10. 1, In the
3D seeu>e example, an authentication entity may include one or more third patties.
such as merchant plug-in.* (MPisj {us indicated a* included in .md or associated with
the merchant i<*2 in iKs, 1) and or access control servers (ACS**) (included in and i»r
associated with tfif issuer 108 (not shownn bach is usable in Implementing 3D
security protocols, to traiism.it messages to the payment network 106, and to receive
messages therefrom, in order to authenticate consumers prior to purchase transactions.
It should be appreciated that messages transmitted to the payment network.106, and
intended to reach backend servers/services at the payment network 106, may be
5 provided for any different number and/or type of services offered by the payment
network 106, to entities shown and not shown in FIG. I.
As further shown in FIG. 1, the payment network 106 includes one or
more backend servers 112, which are provided to host one or a variety of backend
services offered by the payment network 106. In this particular embodiment, the
10 backend server(s) 112 exposes multiple APIs to external and/or internal clients,
through, which one or more of the services may be utilized. The APIs., provided by
payment network 106, are accessible through the API gateway 114 (e.g., an. XML
gateway, etc.) and two recognized computing devices 116 and 118, which are coupled
to the,API .gateway 114,. In this exemplary embodiment, the computing devices 116
15 and 1.18 are network routers. And, the computing device ! 16, in this example, is
provided for receiving verification messages for the 3D secure protocols (e.g., the
Secure€ode# service offered by MasterCard®, etc.), from the merchant 102, via the
MP1 included in and/or associated therewith, and also the ACS included in and/or
associated with the issuer 108 (not shown), in addition, computing device 118
20 coordinates messaging to/from IPsec. or other security protocols, virtual private
networks (VPNs) and to/from clients (via DM.Z computing devices, or perimeter
networks, etc), generally internal to the payment network 106. Uniquely, the API.
gateway 114 includes a local repository 124, which is provided in memory of the API
gateway 114. The local repository 124 includes certificate validation data, specific to
25 recognized computing devices 11.6 and 1.18 only, whereby the recognized computing
devices 11.6 and 118 may be validated internally at the API gateway 114 without
having to access other devices (e.g., global access manger, etc.) (yet other
unrecognized computing devices cannot be validated internally at the API gateway
114). In particular,, the local repository 124 includes the distinguished name of the
30 client certificates of the computing devices 116, and 118.
Further, as shown, the payment network 106 includes an intermediate
computing''device 122, between the client -and the computing device 116, which is
further included. The intermediate computing device 122 generally includes a router
(e.g., an edge router, etc), which may include, in this example, load balancing and/or
application firewall functionality, The computing device 122 may be, in some
embodiments, a data center (or IDC) 1-5 computing device. Also, in this exemplary
embodiment, the payment network 106 further includes two additional computing
device?. One computing device is a lightweight directory access protocol (LDAP)
5 computing device 126, which is configured as the data repository to be used by a
global acc.es-> manger within the payment network 106, for validation of internal and
externa! dients. And, the other computing device s;> a security services computing
device tSSCD) 12S, which is configured to generate security tokens accepted within
(he payment network 106, and specifically, by the baekend sen-ens) 112 and services
10 offered thereby.
While each of the above computing devices is illustrated as separate, in
this particular embodiment, it should be appreciated thai certain of the computing
devices may he integrated together, or further separated, in other payment network
embodiments. Further, other computing devices may foe employed, in addition to, or
15 in place of one or more of the computing devices illustrated in FIG. 1, For example,
the API gateway 514 is only coupled to two recognized computing devices 116 and
118 to receive client messages. It should he understood that a different number of
computing devices may be "recognized" computing devices to the API gateway 114
in other embodiments, depending on, for example, the services offered by the baefcetid
20 server(s) 112, volume of client messaging, a payment network topology, etc.
FIG. 2 illustrates exemplary computing device 200, which is suitable
for use in the system 100, By way of example (and without limitation), the exemplary
•computing device 200 may include one or more servers, workstations, computers,
routers, gateways, or combinations thereof, etc., as appropriate. In the system 100 (of
25 FIG. 1), the merchant 102, acquirer 104, and the issuer 108 are each associated with,
or implemented in, a computing device 200. Further, the baokend sefver(s) 112, the
API gateway 114, each of the -computing devices 116, 118 and 122 are consistent with
the computing device 200, With that said, it should foe understood that the system 3.00
is not limited to the computing device 200, as different computing devices and/or
30 arrangements of computing devices may be used. It should also be understood that
different parts and/or arrangements of parts may be used in other computing devices,
Furthermore, in various exemplary embodiments, the computing'device 200 may
include multiple computing devices located'in close proximity, or distributed over a
geograph ic region,
With reference to FIG. 2, the illustrated computing'device 200
generally includes.a processor 202, and a memory 204 that is coupled to the processor
202. The processor 202 may include, without limitation, one or more processing units
(e.g., in a multi-core configuration, etc.),. including a genera! purpose central
5 processing unit (CPU), a microcontroller, a reduced instruction set computer (RISC)
processor, an application specific integrated circuit (ASIC), a programmable logic
circuit "(PLC), a gate array, and/or any other circuit or processor capable of the
functions described herein. 'The above examples are exemplary' only, and are not
intended to limit in any way the definition and/or meaning, of processor.
10 The memory 204, as described herein, is one or more devices that
enable information, such as executable: instructions and/or other data, to be stored and
retrieved. The memory 204 may include one or more computer-readable storage
media, such as, without limitation, dynamic random access memory (DRAM), static
random access memory (SRAM), read only memory (ROM), erasable programmable
15 read only memory (EPROM), solid state devices. CD-ROMs, tapes, flash drives, hard
disks, and/or any other type of volatile or nonvolatile physical or tangible computerreadable
media. The memory 204 may be configured to store, without limitation,
transaction data, certificates, security technologies, security tokens (eg., SAML
tokens, etc.) aod'or any other types of data suitable for use as described herein, etc.
20 Furthermore, in various embodiments, computer-executable' instructions may he
stored in the memory 204 for execution by the processor 202 to cause the processor
202 to perform,one or more of the functions described herein, such, that the memory
204 is a physical, tangible, and non-transitory computer-readable storage media. It
should be appreciated that the memory 204 may include a variety of different and/or
25 separate: memories, each implemented in one or more of the functions or processes
described herein.
In addition, the illustrated computing device 200 includes a network
interface 206 coupled to the processor 202 (and, in some, embodiments, to the
memory 204 as well). The network interface 206 may include, without limitation, a
30 wired network adapter, a wireless network adapter, a telecommunications adapter, or
other device capable of communicating to one or more different networks, including'
the network 1.10. In some exemplars' embodiments, the computing device 200
includes one or more network interfaces 206 incorporated into or with the processor
Referring •again to FIG. 1, the payment network 106, in this
embodiment, is configured to perform multiple levels of authentication of messages
•received from, for example, the merchant MPi, other external, clients, and/or'interna!
clients 120 (broadly, clients). In the exemplary embodiment of FIG, 1, messages
5 permitted in the payment network 106 are SSL messages, or mutual SSL (MSSL)
messages, or TLS messages or Mutual TLS (MILS) messages, etc. It should be
appreciated that other payment network embodiments, however, may include other,
different types of messaging and/or protocols to provide security based on certificates
or otherwise, etc,
10 'Upon receipt of a message from the merchant MPi, for example, the
intermediate comparing device 122 is configured to append the client certificate
(associated with the client sending the message) to the message as art object, and then
transmit the message to the API gateway i 14, via the computing device 116, which
likewise appends its certificate to the message. Similarly, the computing device 11.8.
15 is configured to, for interna! messages, in this embodiment, append the client
certificate to the message as an object and further append its own certificate to the
message.
in turn. Lite -\H gateway 1 \-\ is u>n figured t<> initially validate the
computing Jcsicc 11*S I '8 based on the i<>ca! sepository 124 therem. For instance. the
20 -\f*] gateway 114 nm access validation \ariaOies stoted on the local tepositor) 124
which sfKltide data, such as authenticated de\ ice name (DN). ior identifying
computing devices whieii are allowable. The validation \ariables ate compared
against uata in the ceibikates (c c request authentkatcdDN. etc) appended to
messages In computing devices {<- ti . computing dev kes i to and 1 1 Ss If the
25 eompanson succeeds, the computing de\ ices are aulhenlic.ded. hi sonic
embodiments the -\iM gafewiO. 1 W may assign She aufheuJicaied device name KJ a
content s unable (c g . .me autbentieatedDN, etc ) winch maintains the authenticated
status of the computing ikn ice throughout the interaction. If the authentication fails.
the API gatew.iv ! 1-i may handle the tail are by stopping the validation process ,md
30 providing a message explaining w by the authentication laded.
Then, the API gatevuo 114 is configured to validate the client, from
which the message \\a.s transmitted, by use oi the appended object, which is the client
certificate, f'o do so, the API jiate* a> M4 ts configured Jo call the I IX\Y computing
ti<:\ ice 12o < employed us the global access manages OJ e.. the local repository J o o not
include contest to validate each client to the payment network 106). When each is
validated, the API gateway 114 is configured to then generate an internal security
token, which Is converted to a security token accepted by the backend server(s): 1 ] 2,
after which the message (including the security token) is transmitted to the backend
5 server(s) 112, whereby the sen-ice, to which the message was directed, is invoked as
necessary,
FIG. 3 illustrates an exemplary method for use in authenticating
messages within the payment network 106, at the client level and further at the
computing device level. The exemplary method 300 is described as (implemented.in
10 the system 100, with further reference to the API. gateway 114 and the computing
devices 116, I 18, and 122: shown in FIG. 1. For example, operations enclosed in the:
dotted box, in FIG, 3, for example, are included in and/or performed by the API
gateway 114, in this exemplary embodiment. The method 300, however, could be
implemented in one or more other entities or parts of the system 100 and/or parts of
15 payment network 106, in other embodiments. And, just as the methods herein should
not be understood to be limited to the exemplary system 100, or the exemplary
computing device 200, the systems and the computing devices herein should not be
understood to be limited to the exemplary method 300.
The method 300 is described'with "reference to a 3D secure message,
20 transmitted by the merchant MP! and received at the intermediate computing device
122, as shown as 130 in FIG. I. It should be appreciated that a message may be
received from one or more other externa! entities, as shown in FIG. 1 or otherwise,
and that the message may be related to any aspect of the payment network 106, but
will, often be provided to access one or more services offered by the backend servers)
25 112, through one or more APIs. Further, messages may be received at the computing
device 118, for example, from one or more entities internal to the payment network
106, as indicated by the dotted block 120 (eg,, internal clients, etc.), to again access
one or more services offered by the backend server(s) 112, through one or more APIs.
Referring again to FIG. 3, at 302, a message (e.g.f a TI..S message, etc.)
30 is received at the computing device 122 from the external client, and specifically:, in
this example, the merchant: 102 (and/or acquirer 104), via an MPi The MM message,
as indicated above, is provided to authenticate a consumer in connection with a
payment account transaction, pursuant to a 3D secure protocol, etc. The MPl message
is received at the computing device 122, via network 110 (as .indicated by .130 in FIG.
1). The network 310, in this example,, is a .HTTP-type network, such that the message
received includes, a HTTP message, it should be understood, however, that different
types of networks may be employed in other examples, whereby the message maybe
of a different type or provided according to different protocols. Also, the message
5 received from the client includes a client certificate tor the externa! client, i.e., the
merchant MP!,, and in particular, a TLS certificate.
Upon receipt of the message, the intermediate computing device 322
validates the client certificate. If the client is validated, the intermediate computing
device 122 appends the client certificate, at 304, to the .message as an object, and
10 specifically, in this embodiment, as an. X509 object. The X509 object may be
appended to the HTTP header, or elsewhere in the message,. The intermediate
computing device 122 further appends its certificate to the message and transmits, at
306, the message to the API gateway 114, via the computing device 116. The
computing'device 116, for this message, does: perform validation, of the client
15 certificate, but otherwise acts as a pass-thru, whereby the computing device 1.16
merely appends the certificate to the message. The certificate includes a distinguished
name (DM), which is a unique identifier of the computing device 116. it should be
appreciated that the computing device 116 may perform one or more additional
operations related to further validate and/or verily the message, or filtering the
20 message received from the computing device 122, prior to passing it along to the API
gateway 114,
The API gateway 1.14 receives the message, and at 308, validates the
certificate from the computing device .116. In particular, the API gateway 114 relies
on certificate validation data in its local repository 124 to validate the certificate of the
25 computing device 1.16 to confirm it is a recognized computing device with .which the
gateway 1 14 is permitted to communicate. The validation may include merely
comparing the distinguished name included in the certificate to a listing of recognized
distinguished names in. the .local repository 124, More often, the APT gateway 1.3.4
performs a full validation of the message (received via TLS channel) by performing a
30 handshake between the computing device 1.16 and the API gateway 134 to validate
the Certificate Authority trust chain from the computing device 1 Hi Once the
handshake is successful, the message reaches the gateway i 14, as:described above,
The API gateway 114 compares the Distinguished Name (ON) of the client certificate
from the incoming message, representing the computing device 116, with a list, stored
in local repository 5-4. of predefined l»t\ values fot all compmmg deMcas tU«u ike
API gateway i 14 has ptevouvl) authorized U a match is found, the matched message
is successfully validated In this manner. validation of the message as to the certificate
for the computing de\ see iJ e is performed ioeaiU to the API gatew a> i I 4, \s ithout
5 requiring communicating with a separate certificate uuihorhj. such as, lot example,
the global access manage! wind) makes use of the I D-\P computing device I2f>.
M ;he validation re\eals the message did not come uotn a recognized
computing de\ ice, the API gateway f S 4 terminates the message, and or initiates one
or more seeum\ rev ieus of She message, etc.
10 (A >m ersd\, i! she message is validated to the computing de\iee ! ]. in this evunpk, the X^0'>
object, from the message. at 310. Then, at 3 12. the API gateway i 14 performs
validation of die object u .-, tbe cUem eeuifieatel tbi the diem psovidmg the
message, that is, the merchant MPS in tins example I lie \ ahd,r> ion of the client
15 ecuifteate. as shown in Ffti. 3, in tins exemplar) embodiment. requires She \Pi
gateuav ! 14 to access the d.tut tepositorv of the global access manager 12d w y . the
1 DAP database^ in whkh credentials \\n diems are stored {eg.. m niemorv 204,
etc.1. Ha-ed on this access, the API gatevva> i i 4 then peiforms. ,ii 312. validation of
the certificate as cording to known techniques.
20 in most eases, d the message *>s imalid oi noi validated. the message
w i!i be rejeatd However m this exemplary embodiment, if the message is invalid or
not validated because the ciient or merchant MPI in2 is unknown, tne -\W gateway
i 14 calls a baekend sets fee m the baekeuJ sen ei{M S12 to provision a new ehun,
which includes the enterprise sen ice bus {j isBs. at 314 (.ieneiaH\, when the
25 certificate or the merchant MPI 102 is unknown or new to the pigment network 106.
the A Pi gatew a> i i 4 calls to the backend sen ice. winch. in Unn. registers hie client,
or men ham MPS 102 fhe legislation of the meiehant MPI HO i» then piovided,
fmm itie hoekend serveit-A ! 12. to the global access manager 126, thereby creating
the client identdler lor the merchant MPI 102. The ciient identifier is titer* provided
30 to the AW gaiewav 114. which in turn, generates the token for the message as
described below.
Conversely:,, if the message is validated, the API gateway i 14 causes a
security token to be generated for the message and/or the client. In particular, the API
gateway 114 generates an internal security token, at 316. The internal security token,
In this example, includes a SAML (security assertion markup language;') token, which
is specific to the client. The AP! gateway 114 then caiis the SSCD 128, at 318. in
responses, as shown in FIG. 3. me SSCD 128 converts, at. 320, the interna? security
token into lite security token which may be recognized by other parts of the payment
5 network 106, including the backend servers(s) 112 and services provided thereby.
After the conversion, the security token, which is also a SAML token in this example,
Is reverted to the API gateway 114 and ss then transmitted to the backend server(s')
i ?2 along with the message, at 322. in response, the backend servers) i 12, and or a
provider of transaction data, or other services, is permitted to facilitate additional
10 messages,;)S required by the particular service requested. In ibis exemplary
embodiment, in response to the MPf message, the directory service in the backend
server ? ] 2 verifies the enrollment status of me payment account, whereby the 3D
secure protocol, for the transaction, may be continued,
Apart from the intermediate computing device 122 and the computing
15 device I16, messages may originate from a variety of other sources, including internal
clients i20. as noted above, in such instances, the message is received at computing
device 1 IS (as described with reference to step 304), which operates to append the
client certificate to the message as an object (e.g., an X509 object, etc.") (arid further
append its own certificate to the message), and pass the message along to the API
20 gateway [ 14, as described above. The API gateway I)4 then performs consistent v. ith
steps 308-318 and 322 for the message.
In the manner described above, the API gateway 114 provides a dual
level of authentication of the message, at the client level and further at the computing
device level ('relying on a local repository) to ensure the message is received from a
25 recognized computing device. Thus, messages, which are received as API messages
from Internal or external clients, are validated at two levels prior to permitting the
message to pass through to backend servers and or backend services, within the
payment network 106. The security of messages to the payment network 106. and
specifically AP! messages, in various exemplary embodiments, is subject to enhanced
30 security, whereby the confidential and/or sensitive information included in messages
to, from and/or through the payment network 106 are further protected from
unauthorized, accesses,
Again and as previously described, it should be appreciated that the
functions described herein, in some embodiments, may be described in computer
executable instructions stored on a computer readable media, and executable by one
or more processors. The computer readable media is a non-transitory computer
readable storage medium. By way of example, and not limitation, such computerreadable
media can include RAM, ROM. lii-PROM. CD-ROM or other optical disk
5 storage, magnetic disk storage or other magnetic storage devices, or any other
medium that can be used to cany or store desired program code in the form of
instructions or data strictures and thai can be accessed by a computer. Combinations
of the above should also be included within the scope of computer-readable media,
It should also he appreciated that one or more aspects of the present
10 disclosure transform a general-purpose computing device into a special-purpose
computing device when configured to perform the functions, methods, and/or
processes described herein.
As will be appreciated based on the foregoing specification, the abovedescribed
embodiments off.be disclosure may be implemented using computer
15 programming or engineering techniques including computer software, firmware.
hardware or any combination or subset thereof, wherein the technical effect may be
achieved by performing at least one of: t'a) receiving an API message from a client,
the API message including a client certificate; (b) appending the client certificate to
the message as an object; tc) appending an intermediate certificate to the message, the
20 intermediate certificate indicative of the computing device; (d) transmitting the
appended messaged to an API gateway, the API gateway including a repository
defining recognised computing devices; (e> performing,, by the API gateway,
validation of the computing device based on an intermediate certificate identifying the
computing device as one of the recognized computing devices, via the repository; (t)
25 performing, by the API gateway, validation of the client based on the client certificate
via a global access manager, separate front the repository; and
Documents
Application Documents
#
Name
Date
1
201817021871-STATEMENT OF UNDERTAKING (FORM 3) [12-06-2018(online)].pdf
2018-06-12
2
201817021871-REQUEST FOR EXAMINATION (FORM-18) [12-06-2018(online)].pdf
2018-06-12
3
201817021871-PROOF OF RIGHT [12-06-2018(online)].pdf
2018-06-12
4
201817021871-POWER OF AUTHORITY [12-06-2018(online)].pdf
2018-06-12
5
201817021871-FORM 18 [12-06-2018(online)].pdf
2018-06-12
6
201817021871-FORM 1 [12-06-2018(online)].pdf
2018-06-12
7
201817021871-FIGURE OF ABSTRACT [12-06-2018(online)].pdf
2018-06-12
8
201817021871-DRAWINGS [12-06-2018(online)].pdf
2018-06-12
9
201817021871-DECLARATION OF INVENTORSHIP (FORM 5) [12-06-2018(online)].pdf