使用cryptojs进行渐进式hmac散列而无需导入所有CryptoJS

时间:2018-09-29 11:27:23

标签: javascript cryptojs

我想使用CryptoJS进行渐进式HMAC512哈希处理。

如果包含整个CryptoJS库,则可以很容易地按以下步骤进行操作:

import { Component, OnInit } from '@angular/core';
import{ StudentHttpServService } from '../show-students/student-http-serv.service';
import {Router, ActivatedRoute} from '@angular/router';
import {Inject} from '@angular/core';

@Component({
  selector: 'app-classes-component',
  templateUrl: './classes-component.component.html',
  styleUrls: ['./classes-component.component.css']
})
export class studentDetailsComponent implements OnInit {

  constructor(@Inject(StudentHttpServService) private __astudentHttpServService: StudentHttpServService, @Inject(ActivatedRoute) private _activatedroute = ActivatedRoute, @Inject(Router) private _router:Router) { 

   }


  ngOnInit() {

//this._StudentHttpServService.getstudentDetailsHttpSrv()
let studentCode = this._activatedroute.snapshot.params['id']

  }

}

但是,我不想包含整个CryptoJS库,因为它可以在空间和计算能力非常小的设备上运行。所以我只尝试包括相关位:

const hmac = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA512, secret_buffer);
hmac.update(text);
hmac.finalize();

但是它会反驳说,没有创建未定义的函数。

或者,我尝试按构造函数创建它:

import HMAC from "crypto-js/hmac";
import sha512 from "crypto-js/sha512";
const hmac = HMAC.create(sha512, secret_buffer);

但是在这种情况下,我听说v不是函数。

我应该怎么做?

0 个答案:

没有答案