gitextract_ums_flbi/ ├── .github/ │ ├── CONTRIBUTING.md │ ├── ISSUE_TEMPLATE.md │ ├── PULL_REQUEST_TEMPLATE.md │ └── workflows/ │ ├── library-builds.yaml │ ├── unit-tests.yaml │ └── validations.yaml ├── .gitignore ├── .gitmodules ├── .local_run_travis_script.sh ├── .travis.yml ├── Cartfile ├── Cartfile.resolved ├── Documentation/ │ └── Prerelease/ │ └── custom_claims.md ├── Example/ │ ├── JWTDesktop/ │ │ ├── JWTDesktop/ │ │ │ ├── AppDelegate.h │ │ │ ├── AppDelegate.m │ │ │ ├── Assets.xcassets/ │ │ │ │ └── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj/ │ │ │ │ └── Main.storyboard │ │ │ ├── Info.plist │ │ │ ├── JWTDecriptedCollectionViewItem.h │ │ │ ├── JWTDecriptedCollectionViewItem.m │ │ │ ├── JWTDecriptedCollectionViewItem.xib │ │ │ ├── JWTDecriptedViewController.h │ │ │ ├── JWTDecriptedViewController.m │ │ │ ├── JWTDecriptedViewController.xib │ │ │ ├── JWTTokenDecoder.h │ │ │ ├── JWTTokenDecoder.m │ │ │ ├── JWTTokenTextTypeDescription.h │ │ │ ├── JWTTokenTextTypeDescription.m │ │ │ ├── NSArrayExtension.h │ │ │ ├── NSArrayExtension.m │ │ │ ├── SignatureValidationDescription.h │ │ │ ├── SignatureValidationDescription.m │ │ │ ├── ViewController+Model.h │ │ │ ├── ViewController+Model.m │ │ │ ├── ViewController.h │ │ │ ├── ViewController.m │ │ │ └── main.m │ │ ├── JWTDesktop.xcodeproj/ │ │ │ ├── project.pbxproj │ │ │ └── project.xcworkspace/ │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata/ │ │ │ └── IDEWorkspaceChecks.plist │ │ └── JWTDesktopTests/ │ │ ├── Info.plist │ │ └── JWTDesktopTests.m │ ├── JWTDesktopSwift/ │ │ ├── JWTDesktopSwift/ │ │ │ ├── AppDelegate.swift │ │ │ ├── Assets.xcassets/ │ │ │ │ └── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ ├── Base.lproj/ │ │ │ │ └── Main.storyboard │ │ │ ├── DecriptedCollectionViewItem.swift │ │ │ ├── DecriptedCollectionViewItem.xib │ │ │ ├── DecriptedViewController.swift │ │ │ ├── DecriptedViewController.xib │ │ │ ├── Info.plist │ │ │ ├── ViewController+Model.swift │ │ │ └── ViewController.swift │ │ └── JWTDesktopSwift.xcodeproj/ │ │ ├── project.pbxproj │ │ └── project.xcworkspace/ │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata/ │ │ └── IDEWorkspaceChecks.plist │ ├── JWTDesktopSwiftToolkit/ │ │ ├── .gitignore │ │ ├── Package.swift │ │ ├── README.md │ │ ├── Sources/ │ │ │ └── JWTDesktopSwiftToolkit/ │ │ │ ├── Array+Extension.swift │ │ │ ├── ColorBridge+Platforms.swift │ │ │ ├── FontBridge+Platforms.swift │ │ │ ├── SignatureValidationType.swift │ │ │ ├── String+Extension.swift │ │ │ ├── TokenDecoder.swift │ │ │ └── TokenTextTypeDescription.swift │ │ └── Tests/ │ │ └── JWTDesktopSwiftToolkitTests/ │ │ └── JWTDesktopSwiftToolkitTests.swift │ └── JWTSwiftUI/ │ ├── JWTSwiftUI/ │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets/ │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── Base.lproj/ │ │ │ └── LaunchScreen.storyboard │ │ ├── BottomView.swift │ │ ├── ContentView.swift │ │ ├── HeaderView.swift │ │ ├── Info.plist │ │ ├── JWTModel.swift │ │ ├── Preview Content/ │ │ │ └── Preview Assets.xcassets/ │ │ │ └── Contents.json │ │ └── SceneDelegate.swift │ ├── JWTSwiftUI.xcodeproj/ │ │ ├── project.pbxproj │ │ └── project.xcworkspace/ │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata/ │ │ └── IDEWorkspaceChecks.plist │ ├── MacJWTSwiftUI/ │ │ ├── Assets.xcassets/ │ │ │ ├── AccentColor.colorset/ │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── ContentView.swift │ │ ├── Info.plist │ │ ├── MacJWTSwiftUI.entitlements │ │ ├── MacJWTSwiftUIApp.swift │ │ └── Preview Content/ │ │ └── Preview Assets.xcassets/ │ │ └── Contents.json │ └── iOSJWTSwiftUI/ │ ├── Assets.xcassets/ │ │ ├── AccentColor.colorset/ │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset/ │ │ │ └── Contents.json │ │ └── Contents.json │ ├── ContentView.swift │ ├── Info.plist │ ├── Preview Content/ │ │ └── Preview Assets.xcassets/ │ │ └── Contents.json │ └── iOSJWTSwiftUIApp.swift ├── JWT.podspec ├── LICENSE ├── Package.resolved ├── Package.swift ├── README.md ├── Scripts/ │ ├── Test certificate and private key 1.p12 │ ├── Test certificate and private key 2.p12 │ ├── Test certificate and public key 1.pem │ ├── Test certificate and public key 2.pem │ ├── cert_1.cer │ ├── cert_1.crt │ ├── cert_1.csr │ ├── cert_1.p12 │ ├── ci-xcode-select.sh │ ├── generate_ec_curved_keys.rb │ ├── generate_keys.rb │ ├── openssl_help.sh │ ├── private_1.pem │ ├── private_256_right.p12 │ ├── private_256_right.pem │ ├── private_256_wrong.p12 │ ├── private_256_wrong.pem │ ├── public_256_right.pem │ ├── public_256_wrong.pem │ ├── test_cert_public_256_right.pem │ └── test_cert_public_256_wrong.pem ├── Sources/ │ └── JWT/ │ ├── Algorithms/ │ │ ├── Base/ │ │ │ ├── JWTAlgorithmErrorDescription+Subclass.m │ │ │ ├── JWTAlgorithmErrorDescription.m │ │ │ ├── JWTAlgorithmFactory.m │ │ │ └── JWTAlgorithmNone.m │ │ ├── ESFamily/ │ │ │ ├── JWTAlgorithmAsymmetricBase.m │ │ │ └── JWTAlgorithmESBase.m │ │ ├── HSFamily/ │ │ │ └── JWTAlgorithmHSBase.m │ │ ├── Holders/ │ │ │ ├── JWTAlgorithmDataHolder+FluentStyle.m │ │ │ ├── JWTAlgorithmDataHolder.m │ │ │ └── JWTAlgorithmDataHolderChain.m │ │ └── RSFamily/ │ │ ├── JWTAlgorithmRSBase.m │ │ └── RSKeys/ │ │ ├── JWTCryptoKey.m │ │ ├── JWTCryptoKeyExtractor+FluentStyle.m │ │ ├── JWTCryptoKeyExtractor.m │ │ ├── JWTCryptoSecurity+ErrorHandling.m │ │ ├── JWTCryptoSecurity+ExternalRepresentation.m │ │ ├── JWTCryptoSecurity+Extraction.m │ │ └── JWTCryptoSecurity.m │ ├── ClaimSet/ │ │ ├── JWTClaim.m │ │ ├── JWTClaimBase.m │ │ ├── JWTClaimSerializerBase.m │ │ ├── JWTClaimSerializerVariations.m │ │ ├── JWTClaimVariations.m │ │ ├── JWTClaimVerifierBase.m │ │ ├── JWTClaimVerifierVariations.m │ │ ├── JWTClaimsProviderBase.m │ │ ├── JWTClaimsSet.m │ │ ├── JWTClaimsSetBase.m │ │ ├── JWTClaimsSetCoordinatorBase.m │ │ ├── JWTClaimsSetDSLBase.m │ │ ├── JWTClaimsSetSerializer.m │ │ ├── JWTClaimsSetSerializerBase.m │ │ ├── JWTClaimsSetVerifier.m │ │ └── JWTClaimsSetVerifierBase.m │ ├── Coding/ │ │ ├── JWTBuilder+FluentStyle.m │ │ ├── JWTCoding+ResultTypes.m │ │ ├── JWTCoding+VersionOne.m │ │ ├── JWTCoding+VersionThree.m │ │ ├── JWTCoding+VersionTwo.m │ │ ├── JWTCoding.m │ │ └── JWTCodingBuilder+FluentStyle.m │ ├── Supplement/ │ │ ├── JWTBase64Coder.m │ │ └── JWTErrorDescription.m │ └── include/ │ ├── JWTAlgorithm.h │ ├── JWTAlgorithmAsymmetricBase.h │ ├── JWTAlgorithmDataHolder+FluentStyle.h │ ├── JWTAlgorithmDataHolder.h │ ├── JWTAlgorithmDataHolderChain.h │ ├── JWTAlgorithmESBase.h │ ├── JWTAlgorithmErrorDescription+Subclass.h │ ├── JWTAlgorithmErrorDescription.h │ ├── JWTAlgorithmFactory.h │ ├── JWTAlgorithmHSBase.h │ ├── JWTAlgorithmNone.h │ ├── JWTAlgorithmRSBase.h │ ├── JWTBase64Coder.h │ ├── JWTBuilder+FluentStyle.h │ ├── JWTClaim.h │ ├── JWTClaimBase.h │ ├── JWTClaimSerializerBase.h │ ├── JWTClaimSerializerVariations.h │ ├── JWTClaimVariations.h │ ├── JWTClaimVerifierBase.h │ ├── JWTClaimVerifierVariations.h │ ├── JWTClaimsProviderBase.h │ ├── JWTClaimsSet.h │ ├── JWTClaimsSetBase.h │ ├── JWTClaimsSetCoordinatorBase.h │ ├── JWTClaimsSetDSLBase.h │ ├── JWTClaimsSetSerializer.h │ ├── JWTClaimsSetSerializerBase.h │ ├── JWTClaimsSetVerifier.h │ ├── JWTClaimsSetVerifierBase.h │ ├── JWTClaimsSetsProtocols.h │ ├── JWTCoding+ResultTypes.h │ ├── JWTCoding+VersionOne.h │ ├── JWTCoding+VersionThree.h │ ├── JWTCoding+VersionTwo.h │ ├── JWTCoding.h │ ├── JWTCodingBuilder+FluentStyle.h │ ├── JWTCryptoKey.h │ ├── JWTCryptoKeyExtractor+FluentStyle.h │ ├── JWTCryptoKeyExtractor.h │ ├── JWTCryptoSecurity+ErrorHandling.h │ ├── JWTCryptoSecurity+ExternalRepresentation.h │ ├── JWTCryptoSecurity+Extraction.h │ ├── JWTCryptoSecurity.h │ ├── JWTDeprecations.h │ ├── JWTErrorDescription.h │ └── JWTRSAlgorithm.h ├── Tests/ │ └── JWTTests/ │ ├── Helpers/ │ │ └── JWTAssetAccessor.m │ ├── Resources/ │ │ ├── Certificates.xcassets/ │ │ │ ├── Contents.json │ │ │ ├── es256/ │ │ │ │ ├── Contents.json │ │ │ │ ├── certificate.cer.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-prime256v1.cer │ │ │ │ ├── original.private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-prime256v1-private.pem │ │ │ │ ├── original.public.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-prime256v1-public.pem │ │ │ │ ├── p12_password.txt.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-prime256v1-p12-password.txt │ │ │ │ ├── private.p12.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-prime256v1-private.p12 │ │ │ │ ├── private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-prime256v1-private.pem │ │ │ │ └── public.pem.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── ec-prime256v1-public.pem │ │ │ ├── es384/ │ │ │ │ ├── Contents.json │ │ │ │ ├── certificate.cer.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp384r1.cer │ │ │ │ ├── original.private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp384r1-private.pem │ │ │ │ ├── original.public.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp384r1-public.pem │ │ │ │ ├── p12_password.txt.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp384r1-p12-password.txt │ │ │ │ ├── private.p12.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp384r1-private.p12 │ │ │ │ ├── private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp384r1-private.pem │ │ │ │ └── public.pem.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── ec-secp384r1-public.pem │ │ │ ├── es512/ │ │ │ │ ├── Contents.json │ │ │ │ ├── certificate.cer.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp521r1.cer │ │ │ │ ├── original.private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp521r1-private.pem │ │ │ │ ├── original.public.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp521r1-public.pem │ │ │ │ ├── p12_password.txt.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp521r1-p12-password.txt │ │ │ │ ├── private.p12.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp521r1-private.p12 │ │ │ │ ├── private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── ec-secp521r1-private.pem │ │ │ │ └── public.pem.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── ec-secp521r1-public.pem │ │ │ ├── rs256/ │ │ │ │ ├── Contents.json │ │ │ │ ├── certificate.cer.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-2048.cer │ │ │ │ ├── p12_password.txt.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-2048-p12-password.txt │ │ │ │ ├── private.p12.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-2048-private.p12 │ │ │ │ ├── private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-2048-private.pem │ │ │ │ └── public.pem.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── rsa-2048-public.pem │ │ │ ├── rs256old/ │ │ │ │ ├── Contents.json │ │ │ │ ├── certificate.cer.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rs256-cert.cer │ │ │ │ ├── p12_password.txt.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── password.txt │ │ │ │ ├── private.p12.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rs256-private.p12 │ │ │ │ ├── private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rs256-private.pem │ │ │ │ └── public.pem.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── rs256-public.pem │ │ │ ├── rs384/ │ │ │ │ ├── Contents.json │ │ │ │ ├── certificate.cer.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-3072.cer │ │ │ │ ├── p12_password.txt.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-3072-p12-password.txt │ │ │ │ ├── private.p12.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-3072-private.p12 │ │ │ │ ├── private.pem.dataset/ │ │ │ │ │ ├── Contents.json │ │ │ │ │ └── rsa-3072-private.pem │ │ │ │ └── public.pem.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── rsa-3072-public.pem │ │ │ └── rs512/ │ │ │ ├── Contents.json │ │ │ ├── certificate.cer.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── rsa-4096.cer │ │ │ ├── p12_password.txt.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── rsa-4096-p12-password.txt │ │ │ ├── private.p12.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── rsa-4096-private.p12 │ │ │ ├── private.pem.dataset/ │ │ │ │ ├── Contents.json │ │ │ │ └── rsa-4096-private.pem │ │ │ └── public.pem.dataset/ │ │ │ ├── Contents.json │ │ │ └── rsa-4096-public.pem │ │ └── template/ │ │ ├── Contents.json │ │ ├── certificate.cer.dataset/ │ │ │ └── Contents.json │ │ ├── p12_password.txt.dataset/ │ │ │ └── Contents.json │ │ ├── private.p12.dataset/ │ │ │ └── Contents.json │ │ ├── private.pem.dataset/ │ │ │ └── Contents.json │ │ ├── public.pem.dataset/ │ │ │ └── Contents.json │ │ └── request.csr.dataset/ │ │ └── Contents.json │ ├── Tests/ │ │ ├── Algorithms/ │ │ │ ├── JWTAlgorithmAsymmetricTests.m │ │ │ ├── JWTAlgorithmHSTests.m │ │ │ └── JWTAlgorithmNoneTests.m │ │ ├── ClaimSet/ │ │ │ ├── JWTClaimsCustomClaimsBaseTests.m │ │ │ ├── JWTClaimsSerializerBaseTests.m │ │ │ └── JWTClaimsSerializerTests.m │ │ ├── JWT/ │ │ │ ├── JWTIssuesTests.m │ │ │ └── JWTReadmeTests.m │ │ └── JWTCoding/ │ │ └── JWTCodingTests.m │ └── include/ │ └── JWTAssetAccessor.h └── VERSION