Spyke

Syndicated from the fediverse. Read and engage on the original instance.

View original on programming.dev

Create a string that contains random characters

Hi! ✌️ I need to generate some string in C++ with random characters that can use all letters from "a" to "z" (include capital letters), and all numbers from 0 to 9 there.

And for examples this should looks somehow like this:

SnHXAsOC5XDYLgiKM5ly

Also I want to encrypt that string then by itself:

SnHXAsOC5XDYLgiKM5ly encrypt with SnHXAsOC5XDYLgiKM5ly key.

So, how can I do this in C++? 🤔

Thanks in advance!

View original on programming.dev
-4

17 replies

lemmy.eco.br

you can do this in pretty much any language. have you tried anything and need help or you're just asking us to do your homework for you?

4
lemmy.eco.br

honest advice: it's fine to ask for help online, but not putting any effort into solving your own problems before you do is disrespectful

2

I think that doesn't respectful to stay in this community for myself. Have a nice day! ✌🏼

-1
lemmy.world
FILE *f = popen("curl 'https://www.random.org/passwords/?num=1&len=12&format=plain&rnd=new'", "r");
char s[14];
fread(s, 1, sizeof(s), f);
s[13] = 0;
3
lemmy.eco.br

that's cheating

(also, it won't work on systems without curl installed)

2
pawb.social

You could take inspiration from Theodore Tso's pwgen: https://github.com/tytso/pwgen

It's a Unix utility in C commonly used on Linux and FreeBSD to make truly random passwords. It's the first thing I thought of when reading this.

2
lemmy.sdf.org

There are various ways to solve the first part and they're pretty generic, the only "C++-specific" part is whether you'll want to build the string step by step (adding characters) or build in one go then modify (build a prearranged string, for example of a specific size, then modify as needed).

To solve the second part we (you) also need to know the encryption algorithm. "Encrypt" is quite a generic word.

1

This is not doable in c++ unfortunately. Its an old case that’s only doable in f# or turbo pascal because of string handling and cryptography export rules (and possibly copy right)

-1

You reached the end