Lua
Lua
ScMinidriver - Change Smart Card PIN (or USB token PIN)
See more ScMinidriver Examples
Demonstrates how to change the PIN for a smart card or USB token.Chilkat Lua Downloads
local chilkat = require("chilkat")
-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
local scmd = chilkat.ScMinidriver.new()
-- Reader names (smart card readers or USB tokens) can be discovered
-- via List Readers or Find Smart Cards
local readerName = "Alcor Micro USB Smart Card Reader 0"
local success = scmd:acquire_context(readerName)
if not success then
print(scmd.last_error_text)
return
end
-- If successful, the name of the currently inserted smart card is available:
print("Card name: " .. scmd.card_name)
-- Change the "user" PIN. (Typically, you'll always be using the "user" PIN.)
local currentPin = "0000"
local newPin = "1234"
local retval = scmd:pin_change("user", currentPin, newPin)
if retval == (-1) then
print("The PIN is already blocked.")
return
end
if retval == (-2) then
print("The PinChange function failed for some unanticipated reason")
print(scmd.last_error_text)
return
end
if retval == 0 then
print("PIN successfully changed.")
else
print("Current PIN is incorrect.")
print("Number of attempts remaining = " .. retval)
end
scmd:delete_context()