fix: Compatible with Node 12.3.0 and higher versions. (#378)

diff --git a/README.md b/README.md
index ac92e2d..5d8cd37 100644
--- a/README.md
+++ b/README.md
@@ -23,8 +23,9 @@
 
 The Pulsar Node.js client can be used to create Pulsar producers and consumers in Node.js. For the supported Pulsar features, see [Client Feature Matrix](https://pulsar.apache.org/client-feature-matrix/).
 
-This library works only in Node.js 10.x or later because it uses the
-[node-addon-api](https://github.com/nodejs/node-addon-api) module to wrap the C++ library.
+This library works only in Node.js 12.3 or later because it uses:
+1. The [node-addon-api](https://github.com/nodejs/node-addon-api) module to wrap the C++ library.
+2. The [Mozilla CA](https://nodejs.org/api/tls.html#tlsrootcertificates) file, which is provided by Node.js v12.3.0 and subsequent versions.
 
 ## Getting Started
 
diff --git a/package.json b/package.json
index 22b825c..87a5059 100644
--- a/package.json
+++ b/package.json
@@ -32,7 +32,7 @@
   "license": "Apache-2.0",
   "gypfile": true,
   "engines": {
-    "node": ">=10.16.0"
+    "node": ">=12.3.0"
   },
   "devDependencies": {
     "@seadub/clang-format-lint": "0.0.2",
diff --git a/src/Client.js b/src/Client.js
index 2ddbfc1..f51b1b6 100644
--- a/src/Client.js
+++ b/src/Client.js
@@ -57,7 +57,14 @@
   }
 
   static genCertFile() {
-    fs.rmSync(certsFilePath, { force: true });
+    try {
+      if (fs.existsSync(certsFilePath)) {
+        fs.unlinkSync(certsFilePath);
+      }
+    } catch (err) {
+      console.error(err);
+    }
+
     const fd = fs.openSync(certsFilePath, 'a');
     try {
       tls.rootCertificates.forEach((cert) => {