Ionic অ্যাপে সুরক্ষিত (secure) ডেটা সংরক্ষণ এবং ডেটা এনক্রিপশন গুরুত্বপূর্ণ বিষয়, বিশেষত যখন আপনি সেনসিটিভ ডেটা যেমন ইউজারের পাসওয়ার্ড, টোকেন বা অন্যান্য গোপনীয় তথ্য সংরক্ষণ করেন। Ionic Secure Storage একটি নিরাপদ এবং এনক্রিপ্টেড ডেটা স্টোরেজ সলিউশন যা Sensitive Data সংরক্ষণের জন্য ব্যবহার করা হয়।
Ionic Secure Storage ব্যবহার করে ডেটা এনক্রিপ্ট করা যেতে পারে, যার ফলে ডেটা স্টোর করার সময় তা এনক্রিপ্ট হয়ে যাবে এবং ডেটা অ্যাক্সেস করার সময় সঠিক ডিক্রিপশন প্রক্রিয়া ব্যবহার করতে হবে।
১. Ionic Secure Storage ইনস্টলেশন
Ionic Secure Storage ইনস্টল করতে হলে আপনাকে @ionic/storage এবং @ionic/storage-secure প্যাকেজ ইনস্টল করতে হবে।
১.১ Secure Storage ইনস্টল করা
টার্মিনাল বা কমান্ড প্রম্পটে নিচের কমান্ডটি চালান:
npm install @ionic/storage-angular
npm install @ionic/storage-secure
এটি Ionic Secure Storage এর প্রয়োজনীয় প্যাকেজ ইনস্টল করবে।
১.২ Secure Storage মডিউল অ্যাপের মডিউলে যুক্ত করা
app.module.ts ফাইলে Ionic Secure Storage মডিউল যুক্ত করুন:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicModule } from '@ionic/angular';
import { AppComponent } from './app.component';
import { IonicStorageModule } from '@ionic/storage-angular';
import { SecureStorageModule } from '@ionic/storage-secure';
@NgModule({
declarations: [AppComponent],
imports: [
BrowserModule,
IonicModule.forRoot(),
IonicStorageModule.forRoot(),
SecureStorageModule.forRoot() // Secure Storage মডিউল যুক্ত করা
],
bootstrap: [AppComponent]
})
export class AppModule {}
২. Ionic Secure Storage ব্যবহার করা
২.১ Secure Storage সার্ভিস ইনজেক্ট করা
এখন, Storage সার্ভিস ইনজেক্ট করে Secure Storage ব্যবহার করতে হবে। এটি ব্যবহার করে ডেটা সংরক্ষণ এবং রিট্রিভ করা যাবে।
import { Component } from '@angular/core';
import { Storage } from '@ionic/storage-angular';
import { SecureStorage } from '@ionic/storage-secure';
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss'],
})
export class HomePage {
constructor(private secureStorage: SecureStorage) {}
// Secure Storage এ ডেটা সংরক্ষণ করা
async setData() {
await this.secureStorage.set('userToken', 'your-secure-token');
console.log('Secure data saved');
}
// Secure Storage থেকে ডেটা রিট্রিভ করা
async getData() {
const token = await this.secureStorage.get('userToken');
console.log('Stored token:', token);
}
}
এখানে:
secureStorage.set()ব্যবহার করে userToken ডেটা এনক্রিপ্ট করে সংরক্ষণ করা হচ্ছে।secureStorage.get()ব্যবহার করে userToken ডেটা ডিক্রিপ্ট করে রিট্রিভ করা হচ্ছে।
৩. Data Encryption
Ionic Secure Storage ডেটা এনক্রিপ্ট করে সংরক্ষণ করতে সহায়তা করে। সাধারণত, Ionic Secure Storage ব্যবহারের সময় AES (Advanced Encryption Standard) এনক্রিপশন অ্যালগরিদম ব্যবহার করা হয়।
Ionic Secure Storage ডিফল্টভাবে Encryption Key ব্যবহার করে ডেটা এনক্রিপ্ট করে এবং স্টোর করে।
৩.১ এনক্রিপশন কীগুলি কনফিগার করা
ডিফল্টভাবে Secure Storage প্ল্যাটফর্মের জন্য নিজস্ব এনক্রিপশন কীগুলি তৈরি করে, তবে আপনি চাইলে কাস্টম এনক্রিপশন কী ব্যবহার করতে পারেন।
import { SecureStorage } from '@ionic/storage-secure';
@NgModule({
imports: [
SecureStorageModule.forRoot({
encryptionKey: 'your-custom-encryption-key' // কাস্টম এনক্রিপশন কী
})
]
})
export class AppModule {}
এটি আপনার কাস্টম এনক্রিপশন কী ব্যবহার করবে, যা নিরাপত্তা বাড়ানোর জন্য উপযোগী হতে পারে।
৪. Secure Storage এর ফিচারসমূহ
- এনক্রিপশন এবং ডিক্রিপশন: Ionic Secure Storage স্বয়ংক্রিয়ভাবে ডেটা এনক্রিপ্ট এবং ডিক্রিপ্ট করে, তাই আপনি সহজেই গোপনীয় ডেটা সংরক্ষণ করতে পারেন।
- কাস্টম এনক্রিপশন কী: আপনি কাস্টম এনক্রিপশন কী ব্যবহার করতে পারেন নিরাপত্তা আরও বাড়ানোর জন্য।
- অ্যাপের ডেটা সুরক্ষা: ডেটা Secure Storage এ সুরক্ষিত অবস্থায় থাকে এবং এটি ডিভাইসের স্টোরেজ থেকে এনক্রিপ্টেড অবস্থায় অ্যাক্সেস করা যায়।
৫. নিরাপদ ডেটা স্টোরেজের কিছু ভালো অনুশীলন
- এনক্রিপশন কী সুরক্ষা: কাস্টম এনক্রিপশন কী ব্যবহার করার সময়, কী নিরাপদ স্থানে সংরক্ষণ করা উচিত। একে অ্যাপের সোর্স কোডে স্টোর না করা উত্তম।
- সেন্সিটিভ ডেটা: সেনসিটিভ ডেটা যেমন ইউজার পাসওয়ার্ড, টোকেন, বা অন্যান্য গোপনীয় তথ্য Secure Storage ব্যবহার করে এনক্রিপ্ট করা উচিত।
- কী জেনারেশন: এনক্রিপশন কী কাস্টম তৈরি করতে Platform API ব্যবহার করা যেতে পারে, যা আপনার ডিভাইসের সিকিউরিটি সুবিধার সাথে মেলে।
সারাংশ
Ionic Secure Storage আপনাকে নিরাপদ এবং এনক্রিপ্টেড ডেটা সংরক্ষণ করতে সাহায্য করে। আপনি ডেটা AES এনক্রিপশন অ্যালগরিদম ব্যবহার করে স্টোর এবং রিট্রিভ করতে পারেন। এটি ডেটা এনক্রিপ্ট এবং ডিক্রিপ্ট করার প্রক্রিয়া সহজ করে তোলে, এবং এটি অ্যাপের নিরাপত্তা বাড়ানোর জন্য একটি কার্যকরী টুল। Sensitive Data স্টোর করার জন্য এটি একটি আদর্শ সমাধান।
Read more