SimpleBase
Hashids.net
SimpleBase | Hashids.net | |
---|---|---|
1 | 13 | |
139 | 3,257 | |
- | - | |
4.8 | 4.5 | |
3 months ago | 7 months ago | |
C# | C# | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
SimpleBase
-
How does Base32 (or any Base2^n) work exactly?
Base32 had encouraged me to develop my own Base32-encoder on .NET. I eventually added other encoding types over the years, leading to the library called SimpleBase. It's now being used by popular packages like Ipfs.Core, net-dns, and KubeOps.
https://github.com/ssg/SimpleBase
Hashids.net
-
Cache human-readable route-values of a Web API or not?
If you're just doing this to avoid Insecure Direct Object Reference (IDOR) problems, then perhaps something like Hashids might be a better choice?
-
Using a Guid as a PK, best practices.
I'm gonna be using this Library https://github.com/ullmark/hashids.net to encode the BIGINT into a string and decode the string back into the BIGINT within my web application.
-
Generating what appears to be a random long from a long, and being able to reliablely convert it back to its orignal value.
If you can use a string, then Markus Ullmark's hashids.net library would be a good place to start.
-
Does anyone know of a modern, DotNet7/C#10 implementation of this article, which covers tamper-proof hidden fields? They are exceedingly useful for CRUD forms which need to hold - but should never allow modification of - certain values, but I haven’t found an appropriate upgrade path.
You could use this approach along with this package https://github.com/ullmark/hashids.net
- Reversible "masking" of int data
-
Value converter of AutoMapper for hashids
Hashids helps you to convert a number Id to a string, this can make your app a little more secure hiding the actual id or related key of your DB when the data is requested by an API.
-
Is it ok to have sensitive data in cascading values?
Guids are nice, but there’s the option of hashids too. While it’s not advertised as a security mechanism, it does mask the integer and make things harder to guess
-
UUIDs to Prevent Enumeration Attacks
Another way to solve enumeration attacks is to use a two-way hashing algorithm to convert your auto-incrementing integer IDs to a hash of arbitrary length. This is essentially what YouTube is doing with their video IDs and it's a low-CPU, low-complexity solution that prevents/severely deters enumeration attacks.
Here is one such library for C# https://github.com/ullmark/hashids.net
- how to shorten the two-factor auth key?
-
[Parte 4] CQRS y MediatR: URLs seguros con HashIds
ullmark/hashids.net: A small .NET package to generate YouTube-like hashes from one or many numbers. (github.com)
What are some alternatives?
MediatR - Simple, unambitious mediator implementation in .NET
HidLibrary - This library enables you to enumerate and communicate with Hid compatible USB devices in .NET.
Humanizer - Humanizer meets all your .NET needs for manipulating and displaying strings, enums, dates, times, timespans, numbers and quantities
FluentValidation - A popular .NET validation library for building strongly-typed validation rules.
RecordParser - Zero Allocation Writer/Reader Parser for .NET Core
Polly - Polly is a .NET resilience and transient-fault-handling library that allows developers to express policies such as Retry, Circuit Breaker, Timeout, Bulkhead Isolation, and Fallback in a fluent and thread-safe manner. From version 6.0.1, Polly targets .NET Standard 1.1 and 2.0+.
ReactJS.NET - .NET library for JSX compilation and server-side rendering of React components
Guard - A high-performance, extensible argument validation library.
Enums.NET - Enums.NET is a high-performance type-safe .NET enum utility library
TinyMapper - A quick object-object mapper for .NET
Edge.js - Run .NET and Node.js code in-process on Windows, MacOS, and Linux
Jurassic - A .NET library to parse and execute JavaScript code.