Mostrar los tags: r

Mostrando del 101 al 110 de 3.127 coincidencias
Se ha buscado por el tag: r
Imágen de perfil

Compresión Fractal de imágenes


Java

Publicado el 11 de Febrero del 2023 por Francisco Javier Rojas Garrido (24 códigos)
696 visualizaciones desde el 11 de Febrero del 2023
Imágen de perfil

Usar un DatagridView como comboBox


Visual Basic.NET

Publicado el 5 de Febrero del 2023 por Mauricio Antonio (7 códigos)
1.436 visualizaciones desde el 5 de Febrero del 2023
Este es un código sencillo que sirve como ejemplo de como se puede usar un DatagridView en vez de un comboBox, con el fin de tener un mejor panorama de los datos que se manejan, ya que el combobox es muy limitado y en el DataGridview se puede ve datos multiples como en este caso que se carga Código, apellidos y nombres.

Amigos de la Comunidad espero que les guste y que sea de gran utilidad para implementarlo en sus proyectos, sobre todo las personas que inician en este mundo de la programación
sin imagen de perfil

Generar password seguro


JavaScript

Publicado el 2 de Enero del 2023 por Jefferson (11 códigos)
537 visualizaciones desde el 2 de Enero del 2023

SCRIPT PARA GENERAR UN PASSWORD SEGURO




Incluye tres niveles
1) Debil
2) Fuerte
3) Muy fuerte

Todas las password generadas incluyen al menos
1 Numero
1 Mayuscula
1 Minuscula
1 Caracter especial
8 lenght


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link
      href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
      rel="stylesheet"
      integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
      crossorigin="anonymous"
    />
    <title>Generar Pass</title>
  </head>
 
  <body>
    <section class="container mt-3">
      <h1 class="text-center">
        Genera tu password
        <h5 class="text-center">
          Incluimos Mayusculas, Minusculas, Numeros y Caracteres especiales
        </h5>
      </h1>
      <hr />
      <div class="row justify-content-around mt-3">
        <div class="col-4">
          <h4 class="text-center my-2 mb-4">Escoje cual contraseña</h4>
          <div class="form-check form-check-inline">
            <input
              class="form-check-input"
              type="radio"
              name="sel"
              id="i1"
              value="1"
              role="button"
            />
            <label class="form-check-label" for="i1" role="button">Debil</label>
          </div>
          <div class="vr"></div>
          <div class="form-check form-check-inline ms-2">
            <input
              class="form-check-input"
              type="radio"
              name="sel"
              id="i2"
              value="2"
              role="button"
            />
            <label class="form-check-label" for="i2" role="button"
              >Fuerte</label
            >
          </div>
          <div class="vr"></div>
          <div class="form-check form-check-inline ms-2">
            <input
              class="form-check-input"
              type="radio"
              name="sel"
              id="i3"
              value="3"
              role="button"
            />
            <label class="form-check-label" for="i3" role="button"
              >Muy Fuerte</label
            >
          </div>
          <div class="row justify-content-center mt-4">
            <button class="btn btn-primary">Generar</button>
          </div>
        </div>
        <div class="vr bg-light border-end border-secondary"></div>
        <div id="div_res" class="col-4 d-none">
          <h2 id="dev" class="text-center border rounded p-3 shadow"></h2>
          <div class="row mt-3">
            <div class="col-4">
              <span id="cop" class="btn btn-outline-dark">copy</span>
            </div>
            <div class="col-4">
              <a
                href="https://ciberprotector.com/comprobador-de-contrase%C3%B1as/"
                target="_blank"
                >Ciberprotector</a
              >
            </div>
            <div class="col-4">
              <a
                href="https://delinea.com/resources/password-strength-checker"
                target="_blank"
                >Delinea</a
              >
            </div>
          </div>
        </div>
      </div>
    </section>
 
    <script>
      document
        .querySelector(".btn-primary")
        .addEventListener("click", function () {
          let a;
          div_res.classList.add("d-none");
          dev.classList.remove(
            "bg-danger",
            "bg-secondary",
            "bg-warning",
            "text-light",
            "text-warning",
            "text-success"
          );
          document.querySelectorAll('[name="sel"]').forEach(function (e) {
            if (e.checked) a = e.value;
          });
          if (a != undefined) {
            1 == a
              ? dev.classList.add("bg-danger", "text-light")
              : 2 == a
              ? dev.classList.add("bg-secondary", "text-warning")
              : dev.classList.add("bg-warning", "text-success");
            div_res.classList.remove("d-none");
            dev.innerText = generar_pass(a);
          }
        });
      const copyContent = async () => {
        let text = document.getElementById("dev").innerText;
        try {
          await navigator.clipboard.writeText(text);
          console.log("Content copied to clipboard");
        } catch (err) {
          console.error("Failed to copy: ", err);
        }
      };
      cop.addEventListener("click", copyContent);
 
 
      /* CODIGO GENERAR PASS */
      const generar_pass = (t) => {
          let e;
          if (1 == t)
            for (let a = 0; (e = aleatorio(8)), check_pass(e) != t; a++);
          else if (2 == t)
            for (let a = 0; (e = aleatorio(12)), check_pass(e) != t; a++);
          else for (let a = 0; (e = aleatorio(14)), check_pass(e) != t; a++);
          return e;
        },
        aleatorio = (t) => {
          let e,
            a =
              "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789^!$%&|[](){}:;.*+-#@<>~";
          const r = () => (
            (e = (() => {
              let e = "";
              for (var r = 0, l = a.length; r < t; ++r)
                e += a.charAt(Math.floor(Math.random() * l));
              return e;
            })()),
            !!(
              e.match(/\W|_/g) &&
              e.match(/(\d+)/g) &&
              e.match(/[a-z]/g) &&
              e.match(/[A-Z]/g)
            ) && e
          );
          for (let t = 0; !r(); t++);
          return e;
        },
        check_pass = (t) => {
          let e,
            a = [
              t.match(/\W|_/g).length,
              t.match(/(\d+)/g).length,
              t.match(/[a-z]/g).length,
              t.match(/[A-Z]/g).length,
            ];
          for (let t = 0; t < a.length; t++) {
            let r = a[t];
            if (((e = ""), 1 == r)) {
              e = 1;
              break;
            }
            if (2 == r) {
              e = 2;
              break;
            }
            e = 3;
          }
          return e;
        };
    </script>
  </body>
</html>
Imágen de perfil

Component Linear gradient


JavaScript

Publicado el 30 de Diciembre del 2022 por Oscar (8 códigos)
423 visualizaciones desde el 30 de Diciembre del 2022
Con este script podrás probar la manera de enviar mensajes entre components en Vue 2.6.x(famoso two data binding), y javascript ver video para mas detalles en
https://www.youtube.com/watch?v=73QHJ2upcK
sin imagen de perfil

Inicio Sesion Robusto Implementando doble factor


PHP

Publicado el 29 de Diciembre del 2022 por Jefferson (11 códigos)
2.657 visualizaciones desde el 29 de Diciembre del 2022

Implementa un sistema mas robusto para el inicio de sesión



in


1) Registro de usuario verificando el email. Encriptando la url de tal forma que sea ilegible por algún pirata.

2) Al registrase le enviaremos al correo la imagen QR para que pueda ser escaneada por su smartphone / teléfono inteligente y agregar a la app de AUTENTIFICACION DOBLE FACTOR que el usuario escoja de la tienda STORE.

3) Libertad para que el usuario cree su propia pregunta de seguridad y la respuesta. Solo el usuario podrá formular su pregunta secreta escudriñando en sus recuerdos y que solo él sepa la respuesta.

4) Recuperación del password por olvido en el mismo sistema, dado que al escribir el email le devolvemos la pregunta de seguridad.

5) Recuperación por si acaso cambia su smartphone / teléfono inteligente y pierde la app móvil de AUTENTIFICACIÓN DOBLE FACTOR, enviándole a su correo la nueva imagen QR para el nuevo registro.

6) El usuario admin cuya password es admin, tendrá libertad de permitir o rechazar al usuario recién registrado.

7) El sistema funciona con cualquier app de AUTENTIFICACIÓN DOBLE FACTOR disponibles en la STORE. (No lo probé con Iphone).


allsmall
Imágen de perfil

FTP.


C/Visual C

Publicado el 28 de Diciembre del 2022 por Hilario (131 códigos)
716 visualizaciones desde el 28 de Diciembre del 2022
-------------------------------------------------
De gustibus et colon bus non est disputandum.
----------------------------------------------
Hilario Iglesias Martínez.
--------------------------------------------
Ejemplo sencillo y práctico, modificado en
parámetros. La idea de este ejercicio está tomada
del manual "Protocolos de Internet", de los autores
Angel López, y Alejandro Novo.
Se pueden modificar y variar los códigos de respuesta.
El ejercicio funciona como cliente FTP
pasándole como parámetros, el nombre de usuario,
el password, y el nombre del servidor ftp.
---------------------------------------------------

----------------------------------------
Compilación:
gcc -o ftp ftp.c
--------------------------------------
Ejecución:
./ftp [nombre usuario] [password] [Servidor ftp]
**************************************************
sin imagen de perfil

Registro - Login - Mail - OTP


PHP

Publicado el 25 de Diciembre del 2022 por Jefferson (11 códigos)
2.150 visualizaciones desde el 25 de Diciembre del 2022

SISTEMA DE REGISTRO-LOGIN mediante EMAIL-OTP



otp_register

1) Al descomprimir hay un archivo txt que debes leer y seguir las instrucciones

-> Bien, si seguiste todos los pasos no debería petar el sistema <-

2) No posee usuario administrador (debes crearlo tu)
simplemente agregas a la tabla usuarios un campo al que puedas llamar admin tipo INT donde 1 indica que es el administrador
luego por medio de php creas controles de seguridad

3) Una vez que te logueas, recibirás un correo donde debes pulsar el botón de activar la verificación del email
(Incluye una plantilla correo para registro/verificacion email)

4) Al verificar el email el campo email_verify de la tabla usuarios cambia a TRUE o 1 permitiendo el acceso

5) Existe un campo en la tabla usuarios llamado activo tipo INT que si lo colocas a FALSE o 0 impide el acceso
(esto, por si decides crear un usuario administrador y mediante programacion php puedes darle o quitarle acceso a cualquier usuario)

6) Una vez logueado, verificado y aceptado. Puedes ingresar al sistema, no sin antes validar un codigo OTP que se te enviara
a tu correo cada vez que entres. "Incluye una plantilla correo para OTP"
(Si utilizas algun servicio SMS o WhatsApp puedes enviar ese codigo OTP por alguna de esas vias)

7) Ofrece la posibilidad de recuperar la contraseña en caso de olvido, he diseñado una password de un solo uso y que al entrar al sistema
deberias cambiarla inmediatamente. Si no lo haces esta password aleatoria quedara invalidada.

8) Al cambiar la password o contraseña por motivo de olvido, se te enviara un email notificando del cambio y te otorgaremos una nueva
password aleatoria. Si al abrir el correo no fuistes tu quien solicito el cambio de contraseña, hay un link para revertir y dejar todo
original.
(Incluye una plantilla correo para recuperacion de contraseña)
Imágen de perfil

FINGER


C/Visual C

Publicado el 22 de Diciembre del 2022 por Hilario (131 códigos)
376 visualizaciones desde el 22 de Diciembre del 2022
*****************************************
Errare humanum est.
---------------------------------------
Hilario Iglesias Martínez.
---------------------------------------
El protocolo finger ofrece la posibilidad de optener
información sobre un usuario de un servidor remoto.

Este protocolo se basa en TCP, usando el puerto 79.
El cliente abre una conexión al puerto 79 del servidor.
El Servidor procesa esta solicitud enviando
la respuesta al Cliente.
Bajo consola linux existe el comando finger, que se puede
instalar, en plataforma Ubuntu, con este comando:

sudo apt-get install finger
-------------------------------------------------
En principio, el programa "finger.c" está programado
para una dirección de host: 192.168.0.16.
El usuario podrá configurar otra según su equipo,
y situación de cortafuegos. El puerto invariable es
el 79.

El programa está hecho para poder jugar con el,
y modificar su estructura.
---------------------------------------------
Compilar:
gcc -w -o finger finger.c

Ejecutar:
./finger
sudo ./finger

También se puede jugar con el mismo, utilizando cualquier
servidor programado, y colocado en mi serie
de programas de la web del programador.
*********************************************************************************
Imágen de perfil

ARGUMENTOS.


C/Visual C

estrellaestrellaestrellaestrellaestrella(1)
Publicado el 18 de Diciembre del 2022 por Hilario (131 códigos)
361 visualizaciones desde el 18 de Diciembre del 2022
*
****************************************
Extinctus ambitur ídem...
--------------------------------------
Hilario Iglesias Martínez.
---------------------------------------
argumento.c
------------------------------------------
Un pequeño y sencillo ejemplo del tratamiento
de entrada de argumentos a través de main().
Como podemos mediante esta función introducir
-en este caso, cantidades númericas-, para
hacer una comparativa de valores.
Imprimiento los resultados mediante consola Linux.
-----------------------------------------------
Compilacion del programa:
gcc -Wall -Werror -o argumento argumento.c
*****
Ejecución:
./argumento
Imágen de perfil

ABRE_FICHERO


C/Visual C

Publicado el 16 de Diciembre del 2022 por Hilario (131 códigos)
364 visualizaciones desde el 16 de Diciembre del 2022
******************************************
Amare et sapere vix deo conceditur.
******************************************
Hilario Iglesias Martínez.
---------------------------------------
Pequeño, y sencillo ejemplo en C, donde
se abre un fichero de texto, y se escriben frases
sucesivas en el.

Este programa se puede implementar
con diferentes tipos de entradas.

----------------------------------------
Compilar:
gcc -Wall -Werror -o texto texto.c
-------------------------------------
Ejecutar:
./texto

****************************************