npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

s-key-id

v1.1.2

Published

Server Key ID

Downloads

467

Readme

s-key-id (Secure Key Generator)

s-key-id modülü, kullanıcıların güvenli anahtarlar oluşturabilmesi için geliştirilmiş bir Node.js modülüdür. Modül, kullanıcıların belirlediği bir prefix, secret, appname ve keysize parametrelerine dayalı benzersiz anahtarlar üretir. Ayrıca, anahtarları dosyaya kaydedebilir, sıfırlayabilir ve mevcut anahtarı çözebilir.

Özellikler

  • Prefix: Anahtarın başına eklenebilecek isteğe bağlı bir ön ek.
  • Secret: Anahtarın oluşturulmasında kullanılan zorunlu bir parametre.
  • Appname: Anahtarı özelleştirmek için isteğe bağlı bir parametre.
  • Keysize: Anahtarın uzunluğunu belirler, varsayılan olarak 32 karakterdir.
  • Anahtar Sıfırlama: Eski anahtarları sıfırlayarak yenisini oluşturma imkanı.
  • Anahtar Çözme (Decode): Anahtarın içindeki prefix, secret ve appname bilgilerini çözebilme.

Kurulum

1. Node.js Modülü Olarak Kullanım

Modülü kullanmak için öncelikle Node.js projenize dahil etmeniz gerekiyor. Aşağıdaki komutla modülü kurabilirsiniz:

npm install s-key-id

2. Projenize Dahil Etme

Modülü projenize dahil etmek için şu şekilde kullanabilirsiniz:

const { skeyid, decodeKeyInfo } = require('s-key-id');

Kullanım

1. Anahtar Oluşturma

Anahtar oluşturmak için, skeyid() fonksiyonuna bir nesne ile parametrelerinizi geçmeniz yeterlidir. Anahtarın başına bir prefix ekleyebilir, secret ve keysize değerlerini belirleyebilirsiniz.

Örnek 1: Anahtar Oluşturma

const { skeyid } = require('s-key-id');

const skeydata = {
  prefix: 'pub',           // Prefix başa eklenir (isteğe bağlı)
  secret: 'mySecret',      // Zorunlu secret
  appname: 'myApp',        // İsteğe bağlı
  keysize: 64              // Zorunlu keysize (anahtar uzunluğu)
};

const key = skeyid(skeydata);

console.log('Generated Key:', key);  // Örnek çıktı: pub-b6a95611d2be2287fc25de45979d674c28f3836078b4d8d3c575c6c0beffbe17

2. Anahtar Sıfırlama

Eğer mevcut anahtarınızı sıfırlamak istiyorsanız, command: 'reset' parametresi ile skeyid() fonksiyonunu çağırabilirsiniz.

Örnek 2: Anahtar Sıfırlama

const { skeyid } = require('s-key-id');

const skeydata = {
  prefix: 'pub',           // Prefix başa eklenir
  secret: 'mySecret',      // Zorunlu secret
  appname: 'myApp',        // İsteğe bağlı
  keysize: 64              // Zorunlu keysize
};

// Anahtarı sıfırlıyoruz
const newKey = skeyid({ ...skeydata, command: 'reset' });

console.log('Reset Key:', newKey);  // Örnek çıktı: pub-b6a95611d2be2287fc25de45979d674c28f3836078b4d8d3c575c6c0beffbe17

3. Anahtarın İçeriğini Görüntüleme (Decode)

Oluşturduğunuz anahtarın içeriğini çözmek için decodeKeyInfo() fonksiyonunu kullanabilirsiniz. Bu fonksiyon, anahtarın içinde yer alan prefix, secret ve appname bilgilerini döndürür.

Örnek 3: Anahtarın İçeriğini Çözme

const { decodeKeyInfo } = require('s-key-id');

// Anahtarın içeriğini çözüp ekrana yazdıralım
const decoded = decodeKeyInfo();
console.log('Decoded Key Info:', decoded);
// Örnek çıktı: { prefix: 'pub', secret: 'mySecret', appname: 'myApp' }

Parametreler

  • prefix: (İsteğe bağlı) Anahtarın başında yer alacak olan ek, örneğin 'pub', 'dev' vb. Varsayılan: '' (boş).
  • secret: (Zorunlu) Anahtarın içerik kısmını oluşturmak için kullanılan gizli değer.
  • appname: (İsteğe bağlı) Uygulamanızın adı. Varsayılan: '' (boş).
  • keysize: (Zorunlu) Anahtarın uzunluğu. Varsayılan: 32 (32 karakter).
  • command: (Opsiyonel) reset komutu ile mevcut anahtar sıfırlanabilir.

Çalışma Prensibi

Anahtarlar, verilen prefix, secret ve appname bilgilerinin birleştirilmesiyle oluşturulur. Bu bilgiler birleştirilerek SHA-256 algoritması ile hashlenir. Sonuç olarak, belirttiğiniz uzunlukta (keysize) kesilmiş benzersiz bir anahtar oluşturulur.

Örnek bir anahtar formatı şu şekilde olacaktır:

<Prefix>-<GeneratedKey>

Örneğin, 'pub' prefix'i ve 'mySecret' secret'ı ile 64 karakter uzunluğunda oluşturulan bir anahtar şöyle görünebilir:

pub-b6a95611d2be2287fc25de45979d674c28f3836078b4d8d3c575c6c0beffbe17

Sıkça Sorulan Sorular (FAQ)

1. Anahtar neden sıfırlanabilir?

Anahtarlarınız güvenlik gereksinimleri nedeniyle değiştirilebilir. Anahtar sıfırlama işlemi, eski anahtarınızı geçersiz kılar ve yeni bir anahtar üretir.

2. Anahtarın uzunluğunu nasıl belirleyebilirim?

keysize parametresi ile anahtarın uzunluğunu belirleyebilirsiniz. Bu, SHA-256 algoritması ile elde edilen hash uzunluğunun kısıtlanmasını sağlar.

3. Prefix ne işe yarar?

prefix, anahtarın başında yer alacak isteğe bağlı bir ek'dir. Anahtarın başına belirlediğiniz herhangi bir değer eklenebilir. Bu, farklı projeler veya uygulamalar için anahtarları ayırmanıza olanak tanır.

Katkıda Bulunma

Herhangi bir hata veya katkı yapmak isterseniz, lütfen bir pull request gönderin veya issue açın.

Geliştiriciler

[email protected]