HexaEightJWTLibrary 1.9.9

There is a newer version of this package available.
See the version list below for details.
dotnet add package HexaEightJWTLibrary --version 1.9.9                
NuGet\Install-Package HexaEightJWTLibrary -Version 1.9.9                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="HexaEightJWTLibrary" Version="1.9.9" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add HexaEightJWTLibrary --version 1.9.9                
#r "nuget: HexaEightJWTLibrary, 1.9.9"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install HexaEightJWTLibrary as a Cake Addin
#addin nuget:?package=HexaEightJWTLibrary&version=1.9.9

// Install HexaEightJWTLibrary as a Cake Tool
#tool nuget:?package=HexaEightJWTLibrary&version=1.9.9                

HexaEight JWT Library

How To Use The Library

Visit HexaEight For More Information

Code Sample

Initialization

var newjwt = new HexaEightJose.JWT();

newjwt.Initialize();

Set HexaEight Resource Name via CommandLine

newjwt.Setresourcename();

Set HexaEight Resource LoginToken via CommandLine

newjwt.Setlogintoken();

Set HexaEight Resource LoginToken Credential via CommandLine

newjwt.Setpassword();

Set Rapid API Key via CommandLine

newjwt.Setapikey();

Once the above is set, an encrypted JWT as shown in the below sample can be generated for any destination resource.

newjwt.AddPayloadItem("aud", destinationresourcename);

newjwt.AddPayloadItem("clientxmlpubkey", xmlpublickey);

newjwt.AddPayloadItem("user", "anyuser@somedomain.com");

newjwt.AddPayloadItem("sessionid", sessionid);

newjwt.AddPayloadItem("sessionpassword", sessionpassword);

newjwt.AddPayloadItem("tokentype", "AccessToken");

Set the JWT token expiration in minutes.

var encryptedtoken = newjwt.CreateEncryptedJWTToken(resource, 1440);

At the Destination resource, Initialize and Set HexaEight Destination resource credentials and decrypt the token using the below command.

var decryptedaccesstoken = newjwt.ValidateToken(encryptedtoken);

Added Support for Managing JWT Sessions - New in Version 1.7.5

Added Support for Creating Simple JWT without HexaEight Encryption but using a Symmetric Password - New in Version 1.8.1

Added Support for HexaEight Client Encryption using JWT - New in Version 1.8.6

Added Authentication Functions for Clients - New in Version 1.8.7

  1. Initiate Login Process For Client Application.

var clientjwt = new HexaEightJose.JWT(); var tokenserverurl = "http://localhost:5000"

var clientcode = clientjwt.InitiateLoginProcess("http://localhost:5000/api/fetch-client-code", clientid);

  1. Fetch Login QR Code (Capture a password for the session from the user and use the password to fetch the QRCode)

Console.Write("Enter a strong password to secure this Client Session : ");

var clientpassword = clientjwt.ReadPassword();

var qrcoderesp = clientjwt.FetchLoginQRCode(clientcode, clientpassword);

  1. Display the Login QR Code to Process the user authentication.

clientjwt.DisplayLoginQRCode(qrcoderesp);

  1. Fetch the JWT Token containing the user identity

var jwttoken = clientjwt.FetchLoginToken(qrcoderesp, clientpassword);

  1. Fetch Logged In User

var loggedinuser = clientjwt.FetchLoggedInUserUsingLoginToken(jwttoken);

  1. Fetch The Application Name

var appname = clientjwt.FetchAppNameUsingLoginToken(jwttoken);

  1. Fetch The Resource ID

var resourcename = clientjwt.FetchResourceIdentityUsingLoginToken(jwttoken);

  1. Retrieve Client Specific Asymmetric Shared Key (ASK) For any destination user or resource.

var destinationask = clientjwt.RetrieveASKFromTokenAuthzServer(jwttoken, someone@domain.com, clientid, tokenserverurl);

  1. Use the Client Specific Asymmetric Shared Key (ASK) To Encrypt Message For the destination.

var hellomsg = "Hello Someone...";

var encryptclientspecificmsg = clientjwt.HEClient.EncryptMessageUsingUAK(jwttoken, someone@domain.com, hellomsg, destinationask);

  1. Use the Client Specific Asymmetric Shared Key (ASK) To Decrypt any Client specific message received from destination using the ASK (fetched using step 8)

var encryptedmessage = "eyJhbGciOiJIUzI1NiIsImtpZCI6IjU2TX..."; (Usually recieve a JWT Message)

var decryptedclientspecificmsg = clientjwt.ValidateTokenUsingSharedKey(encryptedmessage, destinationask);

console.WriteLine(decryptedclientspecificmsg);

Latest Version contains breaking changes and major bug fixes - 1.9.5

Bugfixes - 1.9.9

Below is a a sample JWT which uses HexaEight Encryption generated using HexaEight JWT Library. The contents of this JSON Web Token can be verified from https://jwt.io

eyJhbGciOiJIUzI1NiIsImtpZCI6IjU2TXNjdXdNRlM4dFJ6VURLQ2dlbXpLYkJvcGRVRzlxYno5K2dFcFdWMzExQ3NTSW1aTGVKdUpMSWwwN2VraUpabG9QbHJCbWk1TWFlK3FTVnNtMm80RE1rUjZqS3VvYVhYdDlTeWxuK2tZSkVDZzZkVkV6WmtBcVF4SXZFRjRMS1J3d1FTTXVsR2Y5QkpJcjdUYjRsSFJkQ1NhaEFPcEt2WldMb0JhRVFpQ0N6SDhuWUFOaUhRTU9KNWNObm5vVitFMzRoUkpZZzVieGV0OVBTb2lRUEtBaTYwTTZZcHRKa3lsN1J1WlZlSHZlSTdOeDhYSjZXZk1neGx5ZlVwUVlnY3lQYk9JZUkwbWFnTmhBSkJyOGJtc2ZOQ0NGR0YxRE1wa2pVQWN6T1RLbUMxWXhQWng4RStGdWwwRVBtd0JEem9QN1ZlbHhiNHZwSFlXT2VGTmFsWURNN2FHMUQra2ZCd09JQkZGZXZtN3JpMTVCUmtnMWJiVUNhSEdMZ3NGNmFKL0RkTzl0dkMxU2pmNUwwUkttRjBNUC9obzRvUUJjdVhtd1NjVGVJOWlCek9SdUZ5bjBMbTlYeVVGMGI3OFJ4SXAxS3I5Zlo1N3dQTk1CZ1FBSmV1VTFBaTR1SFZKWDdpMTRnVTg1TkVJZ1NqaFMvbEJNQmJFMWlrbDFtcmVPZ014S0N6V0Zjd0ZEUGdrL3JoRE5HQmVGbDNYQ1ZaS2E0NU10SHRRWmx6M0huOUV4b2pyYmRPTmFrcHdNVkRpZldKSHRMZU1rVWk4WU1CQXk0a3JJeDRETU1Kb0FGUGRkaDRzR1huc0x2cUtxUnM5dHFRRk9iOEVmMjJ6a25oczF5bUhlU3ZhQm8yU2xlRU5Ld1pkWFppcGl5WVkyQ2VWN053K1ZTaVBaZCthQ3pBPT0iLCJpc3N1ZXIiOiJkZW1vLmhleGFlaWdodC5jb20iLCJ0eXAiOiJKT1NFIiwiY2hhbm5lbFNlY3VyaXR5Q29udGV4dCI6IkhleGFFaWdodEVuY3J5cHRpb24iLCJpYXQiOjI3MTkwNzI2LCJleHAiOjI3MTkwNzU2fQ.eyJlbmNyeXB0ZWQiOiJqK0NuMEdDMEZGNFpyWThtL3pJMndNS1VqRXdGZTVuVFI0T0hqQmxHNFNQNFd0K29VdzFYR0lwNlVablhOdzFrZHpPelg0L2NEcXo0T2ZxYTM4YUZ6SURNRlFFckNGVjhaeTF1RTVDa3RBMUtPZjVlT0Fpc2JYRktPdEl2dXpSdGo5QU4wNGgwMWtZdTM1TWZBUXVRTEw0Z0NHSnN6UnN5ODNsVlg5TUppTXlBekpabDlES3Fzd2dtZjN1L3lLV3AvdGhnY3Q5YlhhWXlVN3BYa1Y5NFYxUnZlTUNLY1VxeFg1eDZwTjREdmFxOFMrVVp0MWk4RTAwR2RYelFLNURNZ015YVpQMVNwTjBsQmFkNVl0ZG9wVXBXTWxTZlJ0SVlQdExMdnRwS0tqMUNJcFhRN0k3NVdUVXhJWW9uM3VHOEpraHpCakNCYlhwWEVPeHBZWGlGeklETVpIYkpXTmhXN3dCQ2dtM1prM0FmTnowa3ZxYjB2ZzFVT0lmZm9CSXdpQUsySmFNdU9HYVNKM3VIWW5seGYzVU44MFNrbUJGaHdtQVkwWXBsaDh5QXpMbDJXSkR3YWRLUkZvMW1FRW5VTUZFenVyWUNnaHB4T1NDRXRoNCtsSEZOT3B0M3FVL0s2RmJxV3pLRnBZelRJTHgxeDlsamswYS9xbHpkeElmTWdNeUl4QThJZjVqdXBJeHpCeVhhdFhna1RSSzJvekpROGlVUFcrN0lrU3pmUnBEY2VMSjZkYWtSclZBWHVGYVZXRWpocStVRjM0b1dxWDNhMjNDT3pJRE1lc0RYTUdrVk5xVlpIRVZBbk5LUG93T1Uzd0dYSVBHb0xZcnkxZHpmQjF6UXBDNVZ6dDdJYnBrbDF5OS9DK2VFajNUeXM5ZHFMYjhNR25tdWo4eUF6SUxjK0phN21EYkVJMU8xUHJRa1RBRExLQUxiVlMzbVhGT0J5eTUyRUxKZ1ZtcGVRVENaNTYvQmE5MENhOE9XRWEwQklTMTBHbW8vK0FzL0JZN01nTXdHcWZGaG9SUTd0bExYVmE0dUZIKyt2bHRuT1BQUEhRQ29XRGpndklrL2RveVVQOVpxeTExd3Z4T0tZS3c0cjRyaUtoZGxqN2s3YWZJNTUwNkh6SURNbnM0QVFMN2ZuakNaR3lzSXpqenFIcXJkVHdTVWVmQWJvVTdla0xTTmRLNEF4ZEZVVlFVb2Zock4rQ3R5MVBoRjNSUUdzQ3M3TGdLSGhobGVqc3lBekU4aDMyQm1iZGx3ZlE4N1lyMEF3RG42endGQ1l6aTFJVXEvQUJnZUhmUllvVEtBZ3lOY2ZDS3JIZXJoemN6K0NNdXBHS3FQVE5GUFBhUDhXNGZNZ015dkhYeStBRXRzRFBWeWt0dkEzcEl4T2lad3BJaXVYb1EwZWdSVk1COTZrZEUvaUw1SzJQNXFCMFh3a21VTitnVXJwRkNQRUNJR1ZLRjQzQ2FJeklETSJ9.RQmHl3RwBCxE0wdu2An8JxiIF-bDvrJcxnkAda2IA-4

The above JSON web token was generated by a Resource Domain called demo.hexaeight.com and its intended recipient was resource.hexaeight.com. But if you decode the header, there is no information on the audience or the intended recipient.

If you are thinking it may be in the payload, the answer is yes, but the audience information is encrypted. This will make JSON Web Token resistant to attacks since the attacker will have no clue on the intended recipient of this JWT token.

HexaEight JWT created for a Recipient R by a Sender S using Sender's HexaEight Credentials can only be decrypted by the intended recipient R by using Recipient R own HexaEight Credentials.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on HexaEightJWTLibrary:

Package Downloads
HexaEightMiddleware

ASP.NET Core Middleware To Enable Tokenless Authentication On Resource Servers using HexaEight Sessions.

HexaEightGPTMiddleware

Control An AI Assistant like CHATGPT using this Library. Integrate This Library With HexaEight Middleware to create API that produce controlled AI responses

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.9.256 88 10/11/2024
1.9.255 132 8/11/2024
1.9.254 111 8/11/2024
1.9.253 122 8/11/2024
1.9.252 115 8/11/2024
1.9.251 109 8/10/2024
1.9.250 112 8/10/2024
1.9.249 104 8/7/2024
1.9.248 91 8/7/2024
1.9.247 78 7/25/2024
1.9.246 179 6/29/2024
1.9.245 140 6/23/2024
1.9.244 104 6/17/2024
1.9.243 90 6/11/2024
1.9.242 89 6/11/2024
1.9.241 87 6/11/2024
1.9.240 83 6/11/2024
1.9.239 94 6/11/2024
1.9.238 635 4/18/2024
1.9.237 131 4/18/2024
1.9.236 204 4/16/2024
1.9.235 118 4/13/2024
1.9.234 103 4/13/2024
1.9.233 117 4/13/2024
1.9.232 109 4/11/2024
1.9.231 111 4/10/2024
1.9.230 102 4/10/2024
1.9.229 127 4/2/2024
1.9.228 769 2/10/2024
1.9.227 122 2/10/2024
1.9.226 126 2/10/2024
1.9.225 120 2/9/2024
1.9.224 132 2/8/2024
1.9.223 125 2/7/2024
1.9.222 109 1/31/2024
1.9.221 1,566 10/29/2023
1.9.220 1,200 9/27/2023
1.9.219 649 9/7/2023
1.9.218 120 9/5/2023
1.9.217 1,000 8/17/2023
1.9.216 164 8/12/2023
1.9.215 141 8/12/2023
1.9.214 162 8/8/2023
1.9.213 149 8/8/2023
1.9.212 527 6/12/2023
1.9.211 162 5/27/2023
1.9.210 2,648 2/18/2023
1.9.209 251 2/18/2023
1.9.208 684 2/14/2023
1.9.207 733 2/12/2023
1.9.206 280 2/11/2023
1.9.205 301 2/9/2023
1.9.204 287 2/9/2023
1.9.203 302 2/7/2023
1.9.202 286 2/7/2023
1.9.201 271 2/7/2023
1.9.200 288 2/6/2023
1.9.199 266 2/6/2023
1.9.198 264 2/6/2023
1.9.197 3,773 1/23/2023
1.9.196 305 1/23/2023
1.9.195 767 1/22/2023
1.9.194 1,455 1/21/2023
1.9.193 285 1/20/2023
1.9.192 286 1/20/2023
1.9.191 291 1/20/2023
1.9.190 276 1/20/2023
1.9.189 288 1/20/2023
1.9.188 299 1/20/2023
1.9.187 295 1/20/2023
1.9.186 1,137 1/15/2023
1.9.185 756 1/15/2023
1.9.184 790 12/17/2022
1.9.183 313 12/12/2022
1.9.182 337 12/11/2022
1.9.181 329 12/5/2022
1.9.180 343 12/4/2022
1.9.179 320 12/4/2022
1.9.178 318 12/4/2022
1.9.177 319 12/4/2022
1.9.176 312 12/4/2022
1.9.175 326 12/4/2022
1.9.174 329 12/3/2022
1.9.173 322 12/3/2022
1.9.172 327 12/3/2022
1.9.171 333 12/3/2022
1.9.170 327 12/3/2022
1.9.169 323 12/3/2022
1.9.168 327 12/3/2022
1.9.167 318 12/3/2022
1.9.166 321 12/3/2022
1.9.165 339 12/3/2022
1.9.164 349 12/3/2022
1.9.163 342 11/30/2022
1.9.162 350 11/28/2022
1.9.161 350 11/28/2022
1.9.160 349 11/27/2022
1.9.159 357 11/19/2022
1.9.158 344 11/19/2022
1.9.157 351 11/19/2022
1.9.156 355 11/19/2022
1.9.155 363 11/19/2022
1.9.154 358 11/19/2022
1.9.153 376 11/19/2022
1.9.152 349 11/19/2022
1.9.151 353 11/19/2022
1.9.150 365 11/19/2022
1.9.149 370 11/18/2022
1.9.148 372 11/13/2022
1.9.147 367 11/13/2022
1.9.146 338 11/13/2022
1.9.145 367 11/12/2022
1.9.144 360 11/12/2022
1.9.143 365 11/12/2022
1.9.142 352 11/12/2022
1.9.141 361 11/12/2022
1.9.140 367 11/11/2022
1.9.139 358 11/6/2022
1.9.137 367 11/6/2022
1.9.136 372 11/5/2022
1.9.135 366 11/5/2022
1.9.134 382 11/4/2022
1.9.133 355 11/4/2022
1.9.132 382 11/4/2022
1.9.131 380 11/2/2022
1.9.130 377 11/2/2022
1.9.129 397 11/2/2022
1.9.128 376 11/2/2022
1.9.127 383 11/1/2022
1.9.126 369 11/1/2022
1.9.125 364 11/1/2022
1.9.124 365 10/31/2022
1.9.123 365 10/31/2022
1.9.122 369 10/31/2022
1.9.121 411 10/31/2022
1.9.120 389 10/31/2022
1.9.119 385 10/31/2022
1.9.118 381 10/30/2022
1.9.117 398 10/30/2022
1.9.116 386 10/30/2022
1.9.115 403 10/30/2022
1.9.114 415 10/30/2022
1.9.113 391 10/23/2022
1.9.112 416 10/23/2022
1.9.111 431 10/23/2022
1.9.110 435 10/2/2022
1.9.109 446 9/24/2022
1.9.108 426 7/27/2022
1.9.107 448 7/26/2022
1.9.106 444 7/26/2022
1.9.105 442 7/23/2022
1.9.103 473 7/23/2022 1.9.103 is deprecated because it has critical bugs.
1.9.102 465 7/23/2022 1.9.102 is deprecated because it has critical bugs.
1.9.101 461 7/22/2022 1.9.101 is deprecated because it has critical bugs.
1.9.100 493 7/22/2022 1.9.100 is deprecated because it has critical bugs.
1.9.99 482 7/22/2022 1.9.99 is deprecated because it has critical bugs.
1.9.98 477 7/22/2022 1.9.98 is deprecated because it has critical bugs.
1.9.97 491 7/22/2022 1.9.97 is deprecated because it has critical bugs.
1.9.96 485 7/22/2022 1.9.96 is deprecated because it has critical bugs.
1.9.95 474 7/22/2022 1.9.95 is deprecated because it has critical bugs.
1.9.94 483 7/22/2022 1.9.94 is deprecated because it has critical bugs.
1.9.93 471 7/21/2022 1.9.93 is deprecated because it has critical bugs.
1.9.92 461 7/21/2022 1.9.92 is deprecated because it has critical bugs.
1.9.91 477 7/21/2022 1.9.91 is deprecated because it has critical bugs.
1.9.90 477 7/21/2022 1.9.90 is deprecated because it has critical bugs.
1.9.89 483 7/21/2022 1.9.89 is deprecated because it has critical bugs.
1.9.88 480 7/21/2022 1.9.88 is deprecated because it has critical bugs.
1.9.87 494 7/21/2022 1.9.87 is deprecated because it has critical bugs.
1.9.86 486 7/21/2022 1.9.86 is deprecated because it has critical bugs.
1.9.85 498 7/21/2022 1.9.85 is deprecated because it has critical bugs.
1.9.84 497 7/19/2022 1.9.84 is deprecated because it has critical bugs.
1.9.83 484 7/19/2022 1.9.83 is deprecated because it has critical bugs.
1.9.82 522 7/18/2022 1.9.82 is deprecated because it has critical bugs.
1.9.81 520 7/18/2022 1.9.81 is deprecated because it has critical bugs.
1.9.80 483 7/17/2022 1.9.80 is deprecated because it has critical bugs.
1.9.79 491 7/17/2022 1.9.79 is deprecated because it has critical bugs.
1.9.78 489 7/17/2022 1.9.78 is deprecated because it has critical bugs.
1.9.77 491 7/17/2022 1.9.77 is deprecated because it has critical bugs.
1.9.76 500 7/17/2022 1.9.76 is deprecated because it has critical bugs.
1.9.75 500 7/17/2022 1.9.75 is deprecated because it has critical bugs.
1.9.74 513 7/17/2022 1.9.74 is deprecated because it has critical bugs.
1.9.73 529 7/17/2022 1.9.73 is deprecated because it has critical bugs.
1.9.72 480 7/16/2022
1.9.71 496 7/16/2022 1.9.71 is deprecated because it has critical bugs.
1.9.70 509 7/16/2022 1.9.70 is deprecated because it has critical bugs.
1.9.69 553 7/16/2022 1.9.69 is deprecated because it has critical bugs.
1.9.68 530 7/16/2022 1.9.68 is deprecated because it has critical bugs.
1.9.67 522 7/16/2022 1.9.67 is deprecated because it has critical bugs.
1.9.66 488 7/15/2022 1.9.66 is deprecated because it has critical bugs.
1.9.65 519 7/13/2022 1.9.65 is deprecated because it has critical bugs.
1.9.64 495 7/12/2022 1.9.64 is deprecated because it has critical bugs.
1.9.63 510 7/10/2022 1.9.63 is deprecated because it has critical bugs.
1.9.62 515 6/21/2022 1.9.62 is deprecated because it has critical bugs.
1.9.61 522 6/20/2022 1.9.61 is deprecated because it has critical bugs.
1.9.60 495 6/18/2022 1.9.60 is deprecated because it has critical bugs.
1.9.59 513 6/18/2022 1.9.59 is deprecated because it has critical bugs.
1.9.58 499 6/18/2022 1.9.58 is deprecated because it has critical bugs.
1.9.57 507 6/18/2022 1.9.57 is deprecated because it has critical bugs.
1.9.56 527 6/16/2022 1.9.56 is deprecated because it has critical bugs.
1.9.55 504 6/15/2022 1.9.55 is deprecated because it has critical bugs.
1.9.54 490 6/13/2022 1.9.54 is deprecated because it has critical bugs.
1.9.53 509 6/3/2022 1.9.53 is deprecated because it has critical bugs.
1.9.52 517 6/3/2022 1.9.52 is deprecated because it has critical bugs.
1.9.51 509 6/2/2022 1.9.51 is deprecated because it has critical bugs.
1.9.50 516 6/1/2022 1.9.50 is deprecated because it has critical bugs.
1.9.49 507 6/1/2022 1.9.49 is deprecated because it has critical bugs.
1.9.48 500 5/31/2022 1.9.48 is deprecated because it has critical bugs.
1.9.47 495 5/29/2022 1.9.47 is deprecated because it has critical bugs.
1.9.46 486 5/28/2022 1.9.46 is deprecated because it has critical bugs.
1.9.45 511 5/24/2022 1.9.45 is deprecated because it has critical bugs.
1.9.44 506 5/4/2022 1.9.44 is deprecated because it has critical bugs.
1.9.43 494 5/4/2022 1.9.43 is deprecated because it has critical bugs.
1.9.42 487 5/4/2022 1.9.42 is deprecated because it has critical bugs.
1.9.41 508 5/4/2022 1.9.41 is deprecated because it has critical bugs.
1.9.40 470 5/4/2022 1.9.40 is deprecated because it has critical bugs.
1.9.39 497 5/3/2022 1.9.39 is deprecated because it has critical bugs.
1.9.38 496 5/3/2022 1.9.38 is deprecated because it has critical bugs.
1.9.37 495 5/3/2022 1.9.37 is deprecated because it has critical bugs.
1.9.36 488 5/2/2022 1.9.36 is deprecated because it has critical bugs.
1.9.35 521 4/26/2022 1.9.35 is deprecated because it has critical bugs.
1.9.34 499 4/25/2022 1.9.34 is deprecated because it has critical bugs.
1.9.33 501 4/24/2022 1.9.33 is deprecated because it has critical bugs.
1.9.32 505 4/18/2022 1.9.32 is deprecated because it has critical bugs.
1.9.31 506 4/18/2022 1.9.31 is deprecated because it has critical bugs.
1.9.30 504 4/18/2022 1.9.30 is deprecated because it has critical bugs.
1.9.29 516 4/18/2022 1.9.29 is deprecated because it has critical bugs.
1.9.28 539 4/17/2022 1.9.28 is deprecated because it has critical bugs.
1.9.27 520 4/16/2022 1.9.27 is deprecated because it has critical bugs.
1.9.26 524 4/9/2022 1.9.26 is deprecated because it has critical bugs.
1.9.25 544 4/7/2022 1.9.25 is deprecated because it has critical bugs.
1.9.24 543 4/7/2022 1.9.24 is deprecated because it has critical bugs.
1.9.23 563 4/7/2022 1.9.23 is deprecated because it has critical bugs.
1.9.22 521 4/6/2022 1.9.22 is deprecated because it has critical bugs.
1.9.20 511 4/3/2022 1.9.20 is deprecated because it has critical bugs.
1.9.19 514 3/31/2022 1.9.19 is deprecated because it has critical bugs.
1.9.18 544 3/28/2022 1.9.18 is deprecated because it has critical bugs.
1.9.17 510 3/27/2022 1.9.17 is deprecated because it has critical bugs.
1.9.16 508 3/27/2022 1.9.16 is deprecated because it has critical bugs.
1.9.15 509 3/27/2022 1.9.15 is deprecated because it has critical bugs.
1.9.14 534 3/26/2022 1.9.14 is deprecated because it has critical bugs.
1.9.13 516 3/26/2022 1.9.13 is deprecated because it has critical bugs.
1.9.12 516 3/26/2022 1.9.12 is deprecated because it has critical bugs.
1.9.11 521 3/26/2022 1.9.11 is deprecated because it has critical bugs.
1.9.10 520 3/26/2022 1.9.10 is deprecated because it has critical bugs.
1.9.9 506 3/26/2022 1.9.9 is deprecated because it has critical bugs.
1.9.8 542 3/26/2022 1.9.8 is deprecated because it has critical bugs.
1.9.7 537 3/26/2022 1.9.7 is deprecated because it has critical bugs.
1.9.6 530 3/13/2022 1.9.6 is deprecated because it has critical bugs.
1.9.5 508 3/13/2022 1.9.5 is deprecated because it has critical bugs.
1.9.4 531 3/13/2022 1.9.4 is deprecated because it has critical bugs.
1.9.3 542 3/13/2022 1.9.3 is deprecated because it has critical bugs.
1.9.2 519 3/13/2022 1.9.2 is deprecated because it has critical bugs.
1.9.1 522 3/12/2022 1.9.1 is deprecated because it has critical bugs.
1.9.0 531 3/12/2022 1.9.0 is deprecated because it has critical bugs.
1.8.9 516 3/11/2022 1.8.9 is deprecated because it has critical bugs.
1.8.8 502 3/7/2022 1.8.8 is deprecated because it has critical bugs.
1.8.7 536 3/7/2022 1.8.7 is deprecated because it has critical bugs.
1.8.6 517 3/1/2022 1.8.6 is deprecated because it has critical bugs.
1.8.5 496 3/1/2022 1.8.5 is deprecated because it has critical bugs.
1.8.4 537 2/28/2022 1.8.4 is deprecated because it has critical bugs.
1.8.3 519 2/20/2022 1.8.3 is deprecated because it has critical bugs.
1.8.2 543 2/4/2022 1.8.2 is deprecated because it has critical bugs.
1.8.1 621 10/21/2021 1.8.1 is deprecated because it has critical bugs.
1.8.0 643 10/9/2021 1.8.0 is deprecated because it has critical bugs.
1.7.9 592 10/9/2021 1.7.9 is deprecated because it has critical bugs.
1.7.8 610 10/9/2021 1.7.8 is deprecated because it has critical bugs.
1.7.7 636 10/9/2021 1.7.7 is deprecated because it has critical bugs.
1.7.6 615 10/9/2021 1.7.6 is deprecated because it has critical bugs.
1.7.5 633 10/9/2021 1.7.5 is deprecated because it has critical bugs.
1.7.4 649 10/8/2021 1.7.4 is deprecated because it has critical bugs.
1.7.3 577 10/4/2021 1.7.3 is deprecated because it has critical bugs.
1.7.2 577 10/3/2021 1.7.2 is deprecated because it has critical bugs.
1.7.1 622 10/3/2021 1.7.1 is deprecated because it has critical bugs.
1.7.0 757 10/3/2021
1.6.9 604 10/2/2021 1.6.9 is deprecated because it has critical bugs.
1.6.8 600 10/2/2021 1.6.8 is deprecated because it has critical bugs.