JasonBourne1
Posts: 6
Joined: Wed Jan 14, 2015 11:46 pm

RFIDIOT write to Mifare sector

Fri Mar 20, 2015 10:58 pm

Hi Guys!
I'm trying to write a number to sector 10 / block 40 on a Mifare 4k classic card

Here is my code

Code: Select all

BLOCK = 40
KEY = 'FFFFFFFFFFFF'
TYPE = 'AA'

import rfidiot
import re

card = rfidiot.card
if card.select():
    print 'card selected UID: ' + str(card.uid)
    if card.login(BLOCK, TYPE, KEY):
        if card.readMIFAREblock(BLOCK):
            print card.MIFAREdata
            data = card.ReadablePrint(card.ToBinary(card.MIFAREdata))
            id = re.findall('\d+', data)[0]
            print id

            if card.writeblock(BLOCK, '1234567'):
                print 'write success'
            else:
                 print 'error %s %s' % (card.errorcode , card.ISO7816ErrorCodes[card.errorcode])
        else:
            print 'read failed'
    else:
        print 'Login failed'
Produces this error:
card selected UID: DBF93873
33333735353334000000000000000000
3375534
error 6300 No information given
Any ideas?

Return to “Troubleshooting”