SmartAuthen - otentikasi lintas -platform yang cerdas, sederhana, ringan, dan aman untuk aplikasi apa pun.
Penulis dan Pengembang: AA Suvorov.
SmartAuthen V0.2.3
Peningkatan Kode dan Dokumentasi:
Kode sekarang lebih ramah pengguna dan aman!
SmartAuthen - otentikasi lintas -platform yang cerdas, sederhana, ringan, dan aman untuk aplikasi apa pun.
Gunakan otentikasi sederhana namun sangat andal dan aman di aplikasi Anda.
Hindari kata sandi saat mendaftar dan mengautentikasi dalam aplikasi Anda. Sulit bagi pengguna untuk mengingat kata sandi, oleh karena itu, pengguna menggunakan kata sandi pendek atau kata sandi ringan, yang berperan di tangan penjahat cyber. Ungkapan rahasia sulit ditemukan dan mudah diingat. Saat ini tidak ada meja pelangi dari frasa rahasia, karena ini tidak realistis. Misalnya, saya dapat menggunakan saat mendaftar sebagai frasa quatrain rahasia dari lagu favorit Anda.
Tidak ada bedanya dengan sistem otentikasi Anda berapa lama frasa rahasia, dalam hal apa pun, Anda hanya akan menerima kunci panjang tetap sebagai string.
Biarkan pengguna Anda mendaftar dengan frasa rahasia yang mudah diingat bahwa pengguna akan mudah diingat, tetapi penyerang tidak akan dapat mengambilnya.
Simpan hanya login dan kunci publik di basis data Anda, jika database Anda dikompromikan, penyerang tidak akan mendapatkan akses ke akun pengguna dan tidak akan dapat menggunakan kunci publik untuk otentikasi dengan cara apa pun, setelah semua, dengan kunci publik, ia tidak akan dapat mengetahui frasa rahasia dengan cara apa pun.
Kemungkinan:
Perhatian!
Kunci publik untuk pasangan frase login + rahasia akan selalu sama.
Dengan perubahan dalam login atau frasa rahasia, kunci akan berubah, oleh karena itu jika pengguna mengubah nama pengguna atau frasa sandi, kunci perlu diregenerasi.
Jika sistem Anda dapat menggunakan login yang sama untuk pendaftaran dan otentikasi, gunakan sesuatu yang lain, unik, untuk menghasilkan kunci publik, seperti pengidentifikasi unik.
Jika Anda mengubah nilai atribut step di objek SmartAuth, kunci untuk pasangan frase login + rahasia juga akan berubah. Selalu gunakan nilai yang sama untuk atribut ini. Semakin tinggi nilai atribut ini, semakin aman kunci publik.
Penggunaan:
Saat mendaftar, Anda akan menerima login dan frasa rahasia dari pengguna.
Berdasarkan data yang diterima, hasilkan kunci publik untuk penyimpanan lebih lanjut, dipasangkan dengan login. Jika sistem Anda dapat menggunakan login yang sama untuk pendaftaran dan otentikasi, gunakan sesuatu yang lain, unik, untuk menghasilkan kunci publik, seperti pengidentifikasi unik.
Saat mengautentikasi pengguna, Anda diminta untuk memasukkan login dan frasa rahasia.
Memeriksa data.
(Selama verifikasi, kunci publik pertama kali dihasilkan berdasarkan data yang diterima, dibandingkan dengan kunci yang disimpan, dan nilai boolean dari perbandingan kunci dikembalikan.)
pip install smartauthen from smartauthen import SmartAuth
smart_auth = SmartAuth ()
login = 'login'
secret = 'secret'
key = smart_auth . make_key ( login , secret )
# True since the login + secret phrase is correct
print ( smart_auth . check ( login , secret , key )) # True
secret = 'secret2'
# False because the secret phrase is incorrect
print ( smart_auth . check ( login = login , secret = secret , key = key )) # False pip install pytestpytest -v pip install pytest-covpytest --cov --cov-report=html Cakupan 100% !!!

python -m buildAtau metode yang sudah ketinggalan zaman:
python setup.py sdist bdist_wheel
twine upload dist/*
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------
Licensed under the terms of the BSD 3-Clause License
(see LICENSE for details).
Copyright © 2018-2024, A.A. Suvorov
All rights reserved.
--------------------------------------------------------