Navigation

Search

Categories

On this page

SecureTheWeb : World wide secure web services developer context
Offering SIM Strong Authentication to Internet Services
RE: Rohan Pintos's blogpost - InfoCard or JavaCard // Identity Management
Device coordination with web applications.
Security review of 2005 by Ovum
Followup on A simple managed payment card example from Kim Cameron
Smartcards and Federated Identity.
Microsoft Employees Get Carded
InfoCard demo at Burton Catalyst, San Diego
Kim clears the confusions regarding InfoCard GUI in Indigo
RE: Incremental new technology is required

Archive

Blogroll

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

RSS 2.0 | Atom 1.0 | CDF

Send mail to the author(s) E-mail

Sign In
Pick a theme:

 Tuesday, June 27, 2006
Tuesday, June 27, 2006 11:10:41 AM (Central Standard Time, UTC-06:00) ( )

Below are the details for the registration for SecureTheWeb context. Registration site also provide forum for posting questions/issues/problems.

Cryptoflex.NET is a smart card platform implementing a subset of ECMA specification for CLR, IL, Metadata and core libraries. This new smart card technology (already deployed in product form in Microsoft for their corporate ID program) allows the creation of both on-card and off-card(client) applications much easier and faster than it has been done before on other smart card platforms. More on the platform and SDK in upcoming posts.

 

 Friday, March 10, 2006
Friday, March 10, 2006 7:21:52 AM (Central Standard Time, UTC-06:00) ( )

http://projectliberty.org/resources/whitepapers/SIM_Strong_Authentcation_Whitepaper.pdf

"This paper presents an innovative service called SIM strong authentication service that extends the usage of GSM SIM authentication to Internet Web services. The goal of this proof-of-concept is to demonstrate the possibility of implementing innovative service in a heterogeneous environment using Liberty Alliance Federation Standard. Telenor, Axalto, Linus and Oslo University College have implemented a proof-of-concept prototype in Oslo. The architecture is based on a multi-vendor environment where SUN provides the Identity Provider, IBM the Identity Provider and Service Provider Proxy to connect non-Liberty Alliance Service Providers to the system, Lucent Technologies the Radius server and Ulticom the SS7 MAP Authentication Gateway connecting the prototype to the Telenor mobile network. A typical user flow for such a service would be the case of a user browsing on the World Wide Web from home, a customer premise, an Internet café, etc. When trying to access a protected resource such as Webmail, company portal, or bank account, he logs on to the requested secured site simply by placing his mobile phone close by and communicating with his PC via Bluetooth, or using a SIM card-equipped dongle, card reader, or 2G/3G PC card. This service is available anywhere and can support any Internet services. It is ideal for services like Internet Banking, eAdministration or enterprise internal web pages. The SIM strong authentication is both user-friendly and cost efficient, with a low deployment threshold. The technology is also capable of supporting other Smart-Card based identity services such as USIM (UMTS), certificate based schemes (E.g. TLS) and One Time Password schemes (OTP). A demonstration of the SIM based service is being demonstrated at the 3GSM World Congress in Barcelona, February 2006."

Friday, March 10, 2006 5:34:06 AM (Central Standard Time, UTC-06:00) ( )

Rohan writes:

InfoCard or JavaCard // 

Kim had posted a nice article on A simple managed payment card example a while ago. So basicaly

what happens with a "issued" infocard is that the infocard only contains a pointer to where the

user information is to be obtained from (in this case as per Kim's example the issuer happens

tobe Bank Of America, and the requestor is amazon.com). Well, Kapil had a nicer post on

Smartcards and Federated Identity. Kapil quotes Smartcards are the actually the real enabler of

biggest network of identity federations world has known till date i.e GSM.

[...]

various standards like SAML, Liberty, InfoCard/WS-Trust, WS-Federation etc for identity

federationrespect and understand the usefulness of security devices like Smartcards. All

these standards propose the solution to same set of problems in almost same way and differ

mostly in wire protocols used. SAML and Liberty has a profiles ECP (Enhanced client proxy)

and LECP (Liberty enabled client or proxy) respectively which enables a Smartcard based

authentication where as InfoCard (a profile of WS-Trust) treats Smartcard as another Security

token service which can generate self issued security tokens.

 

nice... I see the light at the end of the tunnel. infocard treats a smartcard as a personal

security token service (PSTS) which can issue security token in form of SAML assertions.

and so i thought... or rather... continue to think...

Whats the difference between the long existent JavaCard/Liberty vs InfoCard/WS-Federation ?

JavaCard/Liberty vs InfoCard/WS-Federation : There is no comparison matrix like this because:

JavaCard technology is not tied to Liberty Alliance and vice versa. Liberty Alliance specifies that security devices (and smart card is one example) can be used to do the authentication. How to communicate to them is unspecified and which makes sense as they will have to specify the protocol for every device that is our there. Now, JavaCard is one type of smart card which has virtual machine, run time and libraries specified by SUN microsystems which we smart card manufacturers implement and put on top of our smart card operating system. There are other types of smart cards for eg. native smart cards which do not have capabilities to run managed code, there is a .NET Smart card which has a virtual machine, run time and libraries specified by ECMA [our implementation is a subset of ECMA specifications for .NET like JavaCard specifications are subset of core Java specifications], and there is one more type which is called Multos smart card.

That said, you could use .NET Smart card in products/implementations of Liberty Alliance. As a matter of fact all the demos that I have done with Liberty Alliance & InfoCard/WS-trust/WS-Federation are with .NET Smartcard. Reason for using .NET Smart card is because it supports richer set of APIs (Hashtable,ArrayList...), language features (strings,long..) and Xml parsing. These features are not availbale in exisiting JavaCards (2.2) and would be part of JavaCard 3.0.

Now, the way you put the matrix it seems that you are thinking of some relation between JavaCard & InfoCard. InfoCard does have a "card" as a suffix but it does not mean it is a smart card. InfoCard is a metadata expressed in XML which describes how a user could authenticate, where the identity provider/security token service is located and what are claims that are supported and JavaCard is a platform for which you could write applications that would store credentials and process requests to use them.

I remember sometime back I had read an article on Microsoft Employees Get Carded" by Karen

EpperHoffman via Kapil's Blog. Well, Scott made us use these along from a long time ago...And

Microsoft's views on smartcards are no different.

Smart card technology is a proven security technology and hope technologists around the world appreciate its importance for web security also.

Hubert has put together a nice demo of how a using Liberty’s ID-WSF protocols, we can create a

module that greatly helps the user in dealing with his digital identities. Currently laptops,

sunray 1g, sunray 170 and desktops ARE available with builtin smartcard readers.

and hence my dilema...

This is really an excellent demo, I am also working on a smiliar type of demo (Liberty Alliance) in which the authentication is done using a challenge-response algorithm (like CRAM-MD5) where the response is generated by Smart card instead of using username/passoword (as done in Hubert's demo). It is another thing that I will  use a theme other than the famous wine shop example as I am a teetotaler :) .

 Thursday, March 09, 2006
Thursday, March 09, 2006 12:24:26 AM (Central Standard Time, UTC-06:00) ( )

Today in keio University, Tokyo, Japan at W3C workshop on Ubiquitous web I gave the talk on device coordination with web applications. The position paper can be found here and presentation is hosted here.

The position is basically to standardize the interface to communicate with the security devices which are network addressable and are discoverable using standard discovery protocols such as UPnP, Bonjour or ZeroConf and are locally connected to the user's machine, from the web page and script from remote web site rendered by browsers.

 Tuesday, December 20, 2005
Tuesday, December 20, 2005 5:30:01 PM (Central Standard Time, UTC-06:00) ( )

http://www.ovum.com/news/euronews.asp?id=3636

Key Points:

  • Identity management has been the fastest growing security sector, and we are pleased to report good progress in getting acceptance of the Liberty Alliance and SAML 2 standards. 
  • Identity management will become even more prominent, but in the enterprise space it will mostly be intra-enterprise, with inter-enterprise initiatives, which are still a couple of years away.
  • Much faster development of identity and identification infrastructure in the government sector, both for law enforcement and for accessing public services.
 Monday, December 12, 2005
Monday, December 12, 2005 11:30:32 AM (Central Standard Time, UTC-06:00) ( )

A very interesting example from Kim Cameron on the use of InfoCards to send the credit-card number. To make it more interesting and validating the philosophy of InfoCard system being user centric and not PC centric and its extensibility I can give one more scenario regarding payment cards. As I wrote in entries here and here InfoCard sees the security device like Smartcard as a personal security token service (PSTS) which can issue security token in form of SAML assertions and so in the picture the identity provider (bank) can be replaced by the Smartcard (actually the bank issued you the Smartcard as its offline representative). Instead of downloading the one time credit card identity token from the user's bank, the InfoCard system request the Smartcard (PSTS) for SAML assertion (security token) which would contain the credit card number (can be one time valid or static), attributes of user such as name, billing address etc. Of course assertion would be digitally signed (XML signature) & encrypted (XML Encryption or SSL) and would be validated by bank once transaction is sent by the shopping site.

You can appreciate that fact that the sensitive data like credit card number, expiration etc is not on your PC but on Smartcard and you avoid a round trip to Identity provider. Smartcard as PSTS not only enable the transactions on PC but also can be used in Kiosk, ATM etc thanks to its mobility aspect. Automation (no need to type the details on web forms), good user experience and security are achieved in this model.

 

Monday, December 12, 2005 4:39:25 AM (Central Standard Time, UTC-06:00) ( )

James McGovern recently asked "How should we think about SmartCards within our own infrastructure and how it plays with federated identity?". I have been talking about the demos we have done with Smartcard in Identity management space but never really talked about the essence of using Smartcards in this domain. I take this oppurtunity to try to explain how Smartcard plays a vital role in federated identity.

Identity federation although new to Internet (www) and world of web services, is not a new concept for the Smartcards. Smartcards are the actually the real enabler of biggest network of identity federations world has known till date i.e GSM. It is this small computer which enables the roaming in the GSM network and let us make use of our mobile phones at places where our operators do not have presence. GSM was devised with the core objective of business harmonization - "you can use my network even though your are a subscriber of another network in another country" which required technical harmonization. Problem is that network 1 does not have an account for you and cannot bill you but they can get your and your operator's (network 2) identity from the phone and ask your operator if they will pay the charges. Of course the operator would want a strong proof of if you are you and not somebody who has stolen your account number. Need is to have a strong authentication for eg using shared key cryptographic where there are exactly 2 copies of secret key - one residing in mobile phone and other at operator's end. The figure below illustrate how a basic GSM authentication is done (it is actually more complicated but for simplicity I am giving this example) :

 

Basically the user's network sends a random number and result after its encryption with shared key to the visiting network and says that if user's phone gives the same encryption result for the random number I will pay the bill. As you can see there is not only a requirement of strong authenitcation but secure storage of shared key (not even accessible to user) and what better technology to use than Smartcard which has the secure, tamper resistant hardware and secure computing capabilities. Computing capabilities are equally important as it is of no use storing the key in Smartcard and giving it to phone for performing cryptographic operation.

Now federated identity for intrenet and intratnet are no different conceptually than the case that I presented. Only the protocols (SAML, WS-Trust etc) used by service providers and identity providers on www are different for obvious reasons. In today's internet the identity of user is of prime interest both to user and to the service provider and hence the need of Strong authentication.

Fortunately various standards like SAML, Liberty, InfoCard/WS-Trust, WS-Federation etc for identity federation respect and understand the usefulness of security devices like Smartcards. All these standards propose the solution to same set of problems in _almost_ same way and differ mostly in wire protocols used. SAML and Liberty has a profiles ECP (Enhanced client proxy) and LECP (Liberty enabled client or proxy) respectively which enables a Smartcard based authentication where as InfoCard (a profile of WS-Trust) treats Smartcard as another Security token service which can generate self issued security tokens.

Other than Strong authentication, secure storage of attributes/credentials and computing capability, mobile nature of Smartcards is an added advantage for user.

 Friday, October 28, 2005
Friday, October 28, 2005 8:53:14 AM (Central Standard Time, UTC-06:00) ( )

Microsoft is betting big on smart cards for its own employees while working to make the technology more palatable for the masses.

Read the full article  by Karen Epper Hoffman at http://redmondmag.com

 Friday, July 15, 2005
Friday, July 15, 2005 9:22:02 PM (Central Standard Time, UTC-06:00) ( )

This week in San Diego we showcased the InfoCard and WS-Trust support by .NET Smartcard which basically hosts the Security Token Service (STS) . This STS generates the RSTR (Request Security token response) with signed SAML Assertion message in response to a RST (Request security token) message [Basic WS-Trust protocol for exchanging security tokens].

Normally as we all know that InfoCard system is part of Avalon/Indigo SDK BETA release (require .NET 2.0) and supports only self issued identity cards but for this demo we created a InfoCard System on .NET 1.1 and used WSE 2.0 SP2 to communicate to the STS hosted in Smart card.

Actually last year at Burton Catayst we did a similar kind of demo which showed hosting WS-Trust STS on Smartcard and implemented active profile of WS-Federation. In this demo we showed how user's identity can be secured stored and managed by Smartcard and can be used by InfoCard System on PC.

Below are some snapshots of the sample application and InfoCard selector GUI on .NET 1.1

1. Smart client application. [ A Service locator ]

 

2. Authenticate to Smart card.

 

3. Lookup for Service

 

4. Select a service

 

5. InfoCard Selector GUI (created by us, not same as that in Indigo)

 

6. Select the InfoCard. This GUI locates the InfoCard [Please note here it is the metadata] and show only the non-geeky part :). Data (user attributes) are in Smartcard.

 

 

7. Clicking on Show Details retrieve the data stored (corresponding to supported claims in InfoCard selected) in the Smartcard.

 

8. Clicking on submit sends to STS (in Smartcard) an RST and gets RSTR. Client application extracts the SAML Assertion from RSTR, embeddeds in the Soap Request to http://www.dotnetcard.com/Demos/InfoCard/wstrust-rp1/BlueMonkey.aspx.

 

 Friday, July 08, 2005
Friday, July 08, 2005 9:14:42 AM (Central Standard Time, UTC-06:00) ( )

Thanks to Kim's explanation finally I have a clear understanding of how the InfoCard selection mechanism (GUI) will work.

In my blog here I was saying that what is displayed in wireframe GUI that comes with Indigo BETA SDK is an attribute card and not Infocard. My understanding was wrong. He corrects me here

“Well, the question is, does the user have to know about the metadata connecting the InfoCard to the Identity Provider?  I don't think so.  Therefore we "dereference" the metadata and show the underlying identity information.  Developers might find this confusing at first, but what do developers like better than a level of indirection????

Here's our thinking.  The InfoCards contain "metadata" just as Kapil says.  But when a user looks at an InfoCard, we don't show her the metadata (which would be meaningless to her).  Instead, we use the metadata to procure a token, and show the information the identity provider is capable of releasing (in other words the set of claims that go along with that identity). “

So, what is displayed is a portion of InfoCard i.e set of claims supported by STS (whose representive this InfoCard is).

But in wirefram GUI I am able to see the attributes (data) which I can also edit, it goes against the notion that InfoCard is just a metadata.

Trevor Lawrence throws a light on this as a comment in Kim's blog.

“It looks at the moment as if the InfoCard UI has a special case built in to allow you to edit your claims in the self-asserted IP that is included. In general, as I understand it, out-of-band mechanisms are likely to be needed to change the claim data that an external IP asserts for a user. (In an authoritive IP I can't just change my passport number without by some other means proving to this IP that that indeed is the number of a new passport issued to me.) “

Now this makes everything clear. What is displayed are supported claims in InfoCard (minus the geekey part) and if these claims reside on user's machine (PC as a local identity provider) then you can edit and see the claims else you need an out of band mechanism to do that. Mostly knowing that these are claims [not data] (displayed in wireframe GUI) which will be transmitted by my IDP to relying party should be enough.

Many thanks to Kim and Trevor for insight.

Friday, July 08, 2005 8:43:11 AM (Central Standard Time, UTC-06:00) ( )

Kim answers my question on confusion regarding Identity metasystem architecture here.

My question was how Liberty based systems which use different protocol (other than WS-Trust) to exchange security tokens would be suppoed in Identity metasystem (mostly to take advantage of InfoCard system Microsoft has put in place).

Kim points out the problem is not only for Liberty enabled providers but for existing islands of identity systems if they want to use the metasystem.

“The truth is, to get to a metasystem, it wouldn't only be Liberty or SAML implementors who would have add the token exchange capability -changes would be required in all the systems asserting corporate and government identities;  in operating systems, mobile devices, online services, smartcards; and in every other technology mentioned in our whitepaper.  No one, including Microsoft, has WS-Trust rolled out at this point in time, so everyone would have to take the plunge.”

This is exactly true.

As a solution to this he proposes

“I was really trying to point out that everything SAML users and vendors already had in place could continue to work just as it does now, while with a small incremental effort their systems could embrace the metasystem.  Sure, it would mean supporting WS-Trust - a protocol designed for metasystem purposes:  exchanging one security token for another different security token.  But the people who've built SAML systems will have little difficulty going this extra step. “

So basically the problem can be approached in 2 ways.

  •  Liberty or SAML systems move to WS-Trust protocol completely (which I do not think they will do) or
  •  Liberty or SAML systems add translators (protocol translators WS-Trust to SAML Request and vice versa) at the server side.