Questions tagged [smartcard]

A smartcard is a card with an embedded chip that may store cryptographic keys and/or perform cryptographic functions. Smartcards are often use as employee ID badges or in contactless credit/debit cards.

Smartcards used for cryptographic functions such as identity verification, signing, and decryption are usually designed so that the cards can generate their own cryptographic public/private key pairs, such that the private key cannot be removed or exported from the card. Using a smartcard to decrypt or sign a piece of data is usually protected by a PIN or passcode.

If you receive a message, whose signature can be validated using the public key, then you know that the message could only have been signed using the private key stored on the smartcard, which means that the message came from someone having physical possession of the smartcard and who knows the PIN or passcode required to use the smartcard. Having the decryption key on the card directly enforces, that without card and PIN knowledge just the encrypted message is available.

SIM cards used in mobile phones are also smart cards, proving an existing account towards network and storing phone numbers and text messages.

EMV cards (also known as "chip and pin") use smartcards to increase security and decrease fraud. The EMV standard, and its test cases, are governed by EMVCo.

Smartcards have a dedicated standard: ISO/IEC 7816 that describes what defines a smartcard from physical characteristics to cryptographic information application, including protocols and commands.

Contactless smart card (such as PayPass and payWave etc) are covered by ISO/IEC 14443; that describe the physical characteristics of the card, power and signal interfaces, transmission and collision detection, and transmission protocols.

EMV cards are also issued with "dual" interfaces that use the same chip on the card and two external interfaces.

1917 questions
61
votes
11 answers

Architectures to access Smart Card from a generic browser? Or: How to bridge the gap from browser to PC/SC stack?

What are the existing client-side architectures to access a local Smart Card thru a PC/SC Smart Card reader (ISO 7816-3, ISO 14443) from a generic browser (connected to a server through http(s)), preferably from Javascript, with the minimum…
fgrieu
  • 2,724
  • 1
  • 23
  • 53
51
votes
2 answers

Blackberry smartcard reader example

I am writing an app for BlackBerry that utilizes a BlackBerry smartcard reader. There is not much documentation on the subject, so I'd really like if someone could give me starting examples. Basically, there is one RSA private key on the card plus a…
pajton
  • 15,828
  • 8
  • 54
  • 65
29
votes
3 answers

Common Access Card (CAC) Authentication Using Java

I'm bascially looking for someplace to start learning how to interface with a government CAC card using java. Ultimately, my goal is to find out how to use CAC card authentication (by PIN number) to authorize access to a website hosted using a…
Paul
27
votes
7 answers

Smartcard reader access from a web browser?

Is it possible to access a smartcard reader connected to a computer from a web browser running on the same machine, i.e. from an ActionScript, JavaScript or whatsoever script running therein? For example, I read something about the…
jlnme
  • 321
  • 1
  • 3
  • 4
27
votes
1 answer

how to create a sha1 hash in python

My objective is to perform "Hashsigning" using smart card in python. there are hashlib's used but there is no specific SHA1 or SHA256 functions in python. My Work: hash_object = hashlib.sha1(b'HelWorld') pbHash = hash_object.hexdigest() but the…
Swetha
  • 523
  • 1
  • 4
  • 11
27
votes
8 answers

Browser is not prompting for a client certificate

Background: I am updating an internal application to a two-step authentication process. I want to add a client certificate authentication process (via a smart card) on top of a traditional username/password form. The application is written in C#,…
25
votes
2 answers

Issue reading smart card

I have reader which has doc almost exact as this one: http://www.jinmuyu.com/download/JMY680A_EN.pdf main difference being, my reader claims it supports also TYPE B cards. I have three ISO 14443 cards, which I test consecutively, and following…
user2793162
24
votes
7 answers

Accessing javax.smartcardio from Linux 64 bits

I'm trying to load the smartcard terminals using the javax.smartcardio API with the following code: public CardTerminal getReadyCardTerminal() throws CardException { TerminalFactory factory = TerminalFactory.getDefault(); CardTerminals…
Gilberto Torrezan
  • 5,113
  • 4
  • 31
  • 50
21
votes
1 answer

How to write smart card with pyscard

I'm using reader/writer acr38f and my smart card is SLE4418. How do I read and write text to my smart card? For example: Hello World! apdu = [0XFF, 0X20,0x00,0x00,0x02, 0x00, 0x00] response, sw1, sw2 = cardservice.connection.transmit( apdu ) apdu =…
john misoskian
  • 574
  • 1
  • 12
  • 32
21
votes
4 answers

starting smartcard programming

How could one get started with smartcards programming? I am asking here about all the toolkit he needs in order to get started: books, tutorials, hardware etc. I am planning in playing around with a couple of smartcards programmers and I am pretty…
hyperboreean
  • 8,273
  • 12
  • 61
  • 97
18
votes
3 answers

Website PKSC #11 smart card authentication and SSL client certificates

We are creating a three-factor authentication for a website due to a legal requirements in one Scandinavian country. The customer is using NetID branded browser plug-ins to do a PKCS #11 certificate authentication in the browser. The smartcards are…
Mikko Ohtamaa
  • 82,057
  • 50
  • 264
  • 435
18
votes
5 answers

Java concurrency pattern for external shared resource (smartcards)

I have a web server service where clients request a smartcard computation and get their result. Available smartcard number can decrease or increase during the server uptime, for example I can add or remove physically the smartcard from the reader…
Tobia
  • 9,165
  • 28
  • 114
  • 219
18
votes
2 answers

Smart Card Reader, can't read some cards

I have an application that is using an smart card reader for allowing the users to access parts of the system. On one location i have no issues. But another, which have an different type of card manufacturer has a lot of issues. It keeps getting an…
mortenstarck
  • 2,713
  • 8
  • 43
  • 76
18
votes
1 answer

Reusing Java Keystore when accessing a smartcard on Windows

I'm developing an application which uses SUNMSCAPI to access a smartcard (electronic id) and retrieve some certificates. Until a while back I could create the keystore and sign a list of files, without re-creating the keystore but now I can only…
Rui Caridade
  • 181
  • 2
17
votes
5 answers

Access restriction on sun.security.pkcs11.SunPKCS11

I'm trying to setup a PKCS11 provider for accessing a smartcard. I installed a PKCS11 library on my system and followed the instructions in the Java PKCS#11 Reference Guide. In the reference they simply create an instance of…
Marc-Christian Schulze
  • 3,154
  • 3
  • 35
  • 45
1
2 3
99 100