GitHub에서 보았 듯이 MuscleApplet은 구형입니다. Java 스마트 카드에 지속적으로 데이터를 저장하는 가장 좋은 방법은 무엇입니까?javacard 데이터 저장을위한 최상의 솔루션은 무엇입니까?
데이터는 이름, 가족, 그림 및 설명으로 구성됩니다.
모든 필드에는 동적 길이가 있으므로 정적 바이트 배열을 각 필드에 적용하고 싶지 않습니다.
GitHub에서 보았 듯이 MuscleApplet은 구형입니다. Java 스마트 카드에 지속적으로 데이터를 저장하는 가장 좋은 방법은 무엇입니까?javacard 데이터 저장을위한 최상의 솔루션은 무엇입니까?
데이터는 이름, 가족, 그림 및 설명으로 구성됩니다.
모든 필드에는 동적 길이가 있으므로 정적 바이트 배열을 각 필드에 적용하고 싶지 않습니다.
질문에 대한 프로그래밍 부분에 답변 해 드리겠습니다.
개인화시 생성 바이트 배열을 작성
애플릿 동적 데이터를 저장하는 방법은 세 가지가있다. 이는 카드가 개인화 된 후에 (즉, 운영 단계에서) 속성이 정적 인 경우에만 유용합니다.
각 카드에 대해 정적 바이트 배열을 만들고 개인화 중에 길이를 저장하십시오. 이것은 각 속성에 최대 크기가 있다는 단점이 있지만 작동중인 동안에도 크기를 구성 할 수 있습니다.
여러 바이트 배열과 기본 유형 중에서 데이터 구조를 만들고 동적으로 바이트 배열을 할당하거나 해제합니다. 오히려 원시, 그리고 아마도 사용할 수없는 - - 자바 카드 런타임에서 제공하는 가비지 컬렉션 (옵션 3) 메모리 할당을 해제하는 당신이에 의존해야합니다
참고.
많은 카드 소유자가있는 경우 각 사람의 최대 메모리 사용량을 계산해야합니다. 각 사용자가 같은 수의 등록 정보를 저장할 수있게하려면 각 필드의 최대 크기를 할당하면 문제가되지 않습니다.
특정 세부 정보/사용 사례 및 보안 속성을 지정하지 않았으므로 "암호 해독"부분에 응답하지 않았습니다. 문제가 생기면 특정 프로그래밍 질문을하십시오. –
답변 해 주셔서 감사합니다. 옵션 3을 수행하기 위해 MuscleCard의 MemoryManager를 제외하고 구현 된 클래스가 있습니까? – BzH
모르겠다. * Musclecard에 대해 알고있다. 그러나 intenal 한 디자인을 모른다. –
질문에 서로 다른 개념을 비교하는 것 같습니다. 응용 프로그램 (MuscleApplet)은 프로그래밍 개념 (바이트 배열)과 다릅니다. 그리고 암호 해독은 단순히 존재하지 않습니다. 그것은 사람의 재산 인 것이 아닙니다. –
아래의 답안 중 3 번 옵션을 사용하고 싶습니다. MuscleCard는 기억하기를 원하는 데이터에 동적으로 메모리를 할당하고 수동으로 가비지 콜레 션 손실을 처리하는 MemoryManager 클래스를 가지고 있습니다. 하지만이 오픈 소스 프로젝트의 ReadMe 파일에서는 구식이고 사용하지 않는 것이 좋습니다. 그래서 내 질문은 동적 메모리 관리를 처리하기 위해 근육 카드와 같은 다른 솔루션이 있는지 여부입니다. – BzH
그리고 해독이라는 단어에 대해 유감스러운 말은 자동 완성 오류였습니다. 설명 – BzH