Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
kit-jwt — Kit용 JSON Web Token (JWT) 인코딩 및 디코딩 | Kitploit
도구/GitLabGitLab/kit-lang/packages/kit-jwt
Encryption/Decryption ToolsCryptographyAuthentication
GitLabkit-lang/packages/kit-jwt

kit-jwt

Kit용 JSON Web Token (JWT) 인코딩 및 디코딩

저장소 보기
1개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

kit-jwt

Kit용 JSON Web Token (JWT) 인코딩 및 디코딩


[TOC]


파일

파일설명
.editorconfig편집기 서식 설정
.gitignore빌드 아티팩트 및 종속성에 대한 Git 무시 규칙
.tool-versionsasdf 툴 버전 (Zig, Kit)
LICENSEMIT 라이선스 파일
README.md이 파일
examples/basic.kit기본 HS256 사용 예제
kit.toml메타데이터, 기능 및 종속성을 포함한 패키지 매니페스트
src/jwt.kitJWT 인코딩, 디코딩, 검증 및 헬퍼 API
zig/jwt_rsa.zigOpenSSL 기반 RSA 서명 및 검증 브리지
zig/kit_ffi.zigRSA 브리지에서 사용되는 Kit Zig FFI 값 헬퍼
tests/hs256.test.kit활성 HS256 동작 테스트
tests/types.test.kit오류, 타입, 알고리즘 및 클레임 형태 테스트
tests/rs256.kit.disabled

종속성

  • Kit 패키지 종속성: crypto
  • Kit 표준 모듈: Encoding.Base64
  • 네이티브 라이브러리: RS256, RS384, RS512 헬퍼용 OpenSSL libcrypto
  • 필요한 기능: ffi

이 패키지는 ffi-zig로 선언되며, RSA 서명 및 검증은 zig/jwt_rsa.zig를 사용합니다. HS256은 crypto.hmac-sha256을 사용합니다.

설치

root@kitploit:~
kit add gitlab.com/kit-lang/packages/kit-jwt.git

사용법

root@kitploit:~
import Kit.Jwt as JWT

main = fn =>
  secret = "my-super-secret-key-at-least-32-chars"
  claims = "{\"sub\":\"user123\",\"name\":\"John Doe\",\"admin\":true,\"iat\":1700000000}"

  match JWT.encode claims secret
    | Err e ->
      println "Failed to create token:"
      println e
    | Ok token ->
      println "JWT:"
      println token

      if JWT.verify? token secret then
        println "Token is valid"
      else
        println "Token is invalid"

      match JWT.decode token secret
        | Ok decoded ->
          println "Header:"
          println decoded.header
          println "Payload:"
          println decoded.payload
        | Err e ->
          println "Decode failed:"
          println e

main

지원되는 서명 및 검증 헬퍼:

안전하지 않은 검사 헬퍼는 서명을 검증하지 않고 토큰을 디버깅하기 위해 제공됩니다.

  • decode-unsafe
  • get-claims-unsafe
  • get-header-unsafe

인가 결정에 안전하지 않은 헬퍼를 사용하지 마십시오.

개발

예제 실행

인터프리터로 기본 예제 실행:

root@kitploit:~
kit run examples/basic.kit --allow=ffi

예제를 네이티브 바이너리로 컴파일:

root@kitploit:~
kit build examples/basic.kit --allow=ffi && ./basic

테스트 실행

활성 테스트 스위트 실행:

root@kitploit:~
kit test --allow=ffi

커버리지와 함께 활성 테스트 스위트 실행:

root@kitploit:~
kit test --coverage --allow=ffi

선택적 RSA 테스트 파일 직접 실행:

root@kitploit:~
kit test tests/rs256.kit.disabled --allow=ffi
kit test tests/rs384.kit.disabled --allow=ffi
kit test tests/rs512.kit.disabled --allow=ffi

kit dev 실행

표준 개발 워크플로 실행 (포맷, 타입 검사, 테스트):

root@kitploit:~
kit dev

이 작업은 다음을 수행합니다:

  1. Kit 소스 및 예제 파일의 포맷 검사
  2. 소스 및 예제의 타입 검사
  3. 커버리지와 함께 활성 테스트 실행

동등성 검사 실행

예제에 대한 인터프리터/컴파일러 동등성 검사 실행:

root@kitploit:~
kit parity --failures-only

동등성 검사는 예제가 인터프리터에서 실행되고, 성공적으로 컴파일되며, 실행되고, 일치하는 출력을 생성하는지 확인합니다.

문서 생성

Doc 주석에서 API 문서 생성:

root@kitploit:~
kit doc src/jwt.kit

참고: Doc 주석 (##)이 있는 Kit 소스는 HTML 문서를 생성합니다.

빌드 아티팩트 정리

생성된 파일, 캐시 및 빌드 아티팩트 제거:

root@kitploit:~
kit task clean

참고: kit.toml에 정의되어 있습니다.

로컬 설치

이 패키지를 로컬에서 개발하기 위해 설치:

root@kitploit:~
kit install

이 명령은 패키지를 ~/.kit/packages/@kit/jwt/에 설치하여 다른 프로젝트에서 Kit.Jwt로 임포트할 수 있게 합니다.

보안 참고 사항

  • 강력하고 무작위인 HS256 비밀을 사용하십시오. 최소 256비트를 권장합니다.
  • 개인 키나 프로덕션 JWT 비밀을 커밋하지 마십시오.
  • 디코딩 후 애플리케이션 클레임(예: exp, nbf, iat, iss, aud)을 검증하십시오.
  • 수명이 짧은 토큰을 선호하고 애플리케이션의 위협 모델에 따라 키를 교체하십시오.
  • 네트워크를 통해 JWT를 전송할 때는 HTTPS를 사용하십시오.

라이선스

이 패키지는 MIT 라이선스 하에 배포됩니다 - 자세한 내용은 LICENSE를 참조하십시오.

도구 다운로드
선택적 RS256 동작 테스트
tests/rs384.kit.disabled선택적 RS384 동작 테스트
tests/rs512.kit.disabled선택적 RS512 동작 테스트
알고리즘헬퍼
HS256encode, encode-with-header, decode, verify?
RS256encode-rs256, decode-rs256, verify-rs256?, get-claims-rs256
RS384encode-rs384, decode-rs384, verify-rs384?, get-claims-rs384
RS512encode-rs512, decode-rs512, verify-rs512?, get-claims-rs512