mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2025-09-12 21:20:07 +00:00
mlkem768
This commit is contained in:
parent
023eb513e4
commit
9b9746ca6b
16 changed files with 60 additions and 1 deletions
|
@ -55,6 +55,7 @@ func (a *ServerController) initRouter(g *gin.RouterGroup) {
|
||||||
g.POST("/getNewX25519Cert", a.getNewX25519Cert)
|
g.POST("/getNewX25519Cert", a.getNewX25519Cert)
|
||||||
g.POST("/getNewmldsa65", a.getNewmldsa65)
|
g.POST("/getNewmldsa65", a.getNewmldsa65)
|
||||||
g.POST("/getNewEchCert", a.getNewEchCert)
|
g.POST("/getNewEchCert", a.getNewEchCert)
|
||||||
|
g.POST("/getNewmlkem768", a.getNewmlkem768)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (a *ServerController) refreshStatus() {
|
func (a *ServerController) refreshStatus() {
|
||||||
|
@ -266,3 +267,12 @@ func (a *ServerController) getNewEchCert(c *gin.Context) {
|
||||||
}
|
}
|
||||||
jsonObj(c, cert, nil)
|
jsonObj(c, cert, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (a *ServerController) getNewmlkem768(c *gin.Context) {
|
||||||
|
out, err := a.serverService.GetNewmlkem768()
|
||||||
|
if err != nil {
|
||||||
|
jsonMsg(c, I18nWeb(c, "pages.inbounds.toasts.getNewmlkem768Error"), err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
jsonObj(c, out, nil)
|
||||||
|
}
|
||||||
|
|
|
@ -162,6 +162,16 @@
|
||||||
inModal.inbound.stream.tls.echServerKeys = msg.obj.echServerKeys;
|
inModal.inbound.stream.tls.echServerKeys = msg.obj.echServerKeys;
|
||||||
inModal.inbound.stream.tls.settings.echConfigList = msg.obj.echConfigList;
|
inModal.inbound.stream.tls.settings.echConfigList = msg.obj.echConfigList;
|
||||||
},
|
},
|
||||||
|
async getNewmlkem768() {
|
||||||
|
inModal.loading(true);
|
||||||
|
const msg = await HttpUtil.post('/server/getNewmlkem768');
|
||||||
|
inModal.loading(false);
|
||||||
|
if (!msg.success) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
inModal.inbound.stream.reality.mlkem768Seed = msg.obj.seed;
|
||||||
|
inModal.inbound.stream.reality.settings.mlkem768Client = msg.obj.Client;
|
||||||
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -871,3 +871,29 @@ func (s *ServerService) GetNewEchCert(sni string) (interface{}, error) {
|
||||||
"echConfigList": configList,
|
"echConfigList": configList,
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *ServerService) GetNewmlkem768() (any, error) {
|
||||||
|
// Run the command
|
||||||
|
cmd := exec.Command(xray.GetBinaryPath(), "mlkem768")
|
||||||
|
var out bytes.Buffer
|
||||||
|
cmd.Stdout = &out
|
||||||
|
err := cmd.Run()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
lines := strings.Split(out.String(), "\n")
|
||||||
|
|
||||||
|
SeedLine := strings.Split(lines[0], ":")
|
||||||
|
ClientLine := strings.Split(lines[1], ":")
|
||||||
|
|
||||||
|
seed := strings.TrimSpace(SeedLine[1])
|
||||||
|
client := strings.TrimSpace(ClientLine[1])
|
||||||
|
|
||||||
|
keyPair := map[string]any{
|
||||||
|
"seed": seed,
|
||||||
|
"client": client,
|
||||||
|
}
|
||||||
|
|
||||||
|
return keyPair, nil
|
||||||
|
}
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "خطأ في الحصول على حركات المرور"
|
"trafficGetError" = "خطأ في الحصول على حركات المرور"
|
||||||
"getNewX25519CertError" = "حدث خطأ أثناء الحصول على شهادة X25519."
|
"getNewX25519CertError" = "حدث خطأ أثناء الحصول على شهادة X25519."
|
||||||
"getNewmldsa65Error" = "حدث خطاء في الحصول على mldsa65."
|
"getNewmldsa65Error" = "حدث خطاء في الحصول على mldsa65."
|
||||||
|
"getNewmlkem768Error" = "حدث خطأ أثناء الحصول على mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "طلب"
|
"request" = "طلب"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "Error getting traffics."
|
"trafficGetError" = "Error getting traffics."
|
||||||
"getNewX25519CertError" = "Error while obtaining the X25519 certificate."
|
"getNewX25519CertError" = "Error while obtaining the X25519 certificate."
|
||||||
"getNewmldsa65Error" = "Error while obtaining mldsa65."
|
"getNewmldsa65Error" = "Error while obtaining mldsa65."
|
||||||
|
"getNewmlkem768Error" = "Error while obtaining mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "Request"
|
"request" = "Request"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "Error al obtener los tráficos"
|
"trafficGetError" = "Error al obtener los tráficos"
|
||||||
"getNewX25519CertError" = "Error al obtener el certificado X25519."
|
"getNewX25519CertError" = "Error al obtener el certificado X25519."
|
||||||
"getNewmldsa65Error" = "Error al obtener el certificado mldsa65."
|
"getNewmldsa65Error" = "Error al obtener el certificado mldsa65."
|
||||||
|
"getNewmlkem768Error" = "Error al obtener el certificado mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "Pedido"
|
"request" = "Pedido"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "خطا در دریافت ترافیکها"
|
"trafficGetError" = "خطا در دریافت ترافیکها"
|
||||||
"getNewX25519CertError" = "خطا در دریافت گواهی X25519."
|
"getNewX25519CertError" = "خطا در دریافت گواهی X25519."
|
||||||
"getNewmldsa65Error" = "خطا در دریافت گواهی mldsa65."
|
"getNewmldsa65Error" = "خطا در دریافت گواهی mldsa65."
|
||||||
|
"getNewmlkem768Error" = "خطا در دریافت گواهی mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "درخواست"
|
"request" = "درخواست"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "Gagal mendapatkan data lalu lintas"
|
"trafficGetError" = "Gagal mendapatkan data lalu lintas"
|
||||||
"getNewX25519CertError" = "Terjadi kesalahan saat mendapatkan sertifikat X25519."
|
"getNewX25519CertError" = "Terjadi kesalahan saat mendapatkan sertifikat X25519."
|
||||||
"getNewmldsa65Error" = "Terjadi kesalahan saat mendapatkan sertifikat mldsa65."
|
"getNewmldsa65Error" = "Terjadi kesalahan saat mendapatkan sertifikat mldsa65."
|
||||||
|
"getNewmlkem768Error" = "Terjadi kesalahan saat mendapatkan sertifikat mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "Permintaan"
|
"request" = "Permintaan"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "トラフィックの取得中にエラーが発生しました"
|
"trafficGetError" = "トラフィックの取得中にエラーが発生しました"
|
||||||
"getNewX25519CertError" = "X25519証明書の取得中にエラーが発生しました。"
|
"getNewX25519CertError" = "X25519証明書の取得中にエラーが発生しました。"
|
||||||
"getNewmldsa65Error" = "mldsa65証明書の取得中にエラーが発生しました。"
|
"getNewmldsa65Error" = "mldsa65証明書の取得中にエラーが発生しました。"
|
||||||
|
"getNewmlkem768Error" = "mlkem768証明書の取得中にエラーが発生しました。"
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "リクエスト"
|
"request" = "リクエスト"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "Erro ao obter tráfegos"
|
"trafficGetError" = "Erro ao obter tráfegos"
|
||||||
"getNewX25519CertError" = "Erro ao obter o certificado X25519."
|
"getNewX25519CertError" = "Erro ao obter o certificado X25519."
|
||||||
"getNewmldsa65Error" = "Erro ao obter o certificado mldsa65."
|
"getNewmldsa65Error" = "Erro ao obter o certificado mldsa65."
|
||||||
|
"getNewmlkem768Error" = "Erro ao obter o certificado mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "Requisição"
|
"request" = "Requisição"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "Ошибка получения данных о трафике"
|
"trafficGetError" = "Ошибка получения данных о трафике"
|
||||||
"getNewX25519CertError" = "Ошибка при получении сертификата X25519."
|
"getNewX25519CertError" = "Ошибка при получении сертификата X25519."
|
||||||
"getNewmldsa65Error" = "Ошибка при получении сертификата mldsa65."
|
"getNewmldsa65Error" = "Ошибка при получении сертификата mldsa65."
|
||||||
|
"getNewmlkem768Error" = "Ошибка при получении сертификата mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "Запрос"
|
"request" = "Запрос"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "Trafik bilgisi alınırken hata oluştu"
|
"trafficGetError" = "Trafik bilgisi alınırken hata oluştu"
|
||||||
"getNewX25519CertError" = "X25519 sertifikası alınırken hata oluştu."
|
"getNewX25519CertError" = "X25519 sertifikası alınırken hata oluştu."
|
||||||
"getNewmldsa65Error" = "mldsa65 sertifikası alınırken hata oluştu."
|
"getNewmldsa65Error" = "mldsa65 sertifikası alınırken hata oluştu."
|
||||||
|
"getNewmlkem768Error" = "mlkem768 sertifikası alınırken hata oluştu."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "İstek"
|
"request" = "İstek"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "Помилка отримання даних про трафік"
|
"trafficGetError" = "Помилка отримання даних про трафік"
|
||||||
"getNewX25519CertError" = "Помилка при отриманні сертифіката X25519."
|
"getNewX25519CertError" = "Помилка при отриманні сертифіката X25519."
|
||||||
"getNewmldsa65Error" = "Помилка при отриманні сертифіката mldsa65."
|
"getNewmldsa65Error" = "Помилка при отриманні сертифіката mldsa65."
|
||||||
|
"getNewmlkem768Error" = "Помилка при отриманні сертифіката mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "Запит"
|
"request" = "Запит"
|
||||||
|
|
|
@ -265,7 +265,8 @@
|
||||||
"resetInboundClientTrafficSuccess" = "Đã đặt lại lưu lượng"
|
"resetInboundClientTrafficSuccess" = "Đã đặt lại lưu lượng"
|
||||||
"trafficGetError" = "Lỗi khi lấy thông tin lưu lượng"
|
"trafficGetError" = "Lỗi khi lấy thông tin lưu lượng"
|
||||||
"getNewX25519CertError" = "Lỗi khi lấy chứng chỉ X25519."
|
"getNewX25519CertError" = "Lỗi khi lấy chứng chỉ X25519."
|
||||||
"getNewmldsa65Error" = "Lỗi khi lấy chúng tôi mldsa65."
|
"getNewmldsa65Error" = "Lỗi khi lấy chứng chỉ mldsa65."
|
||||||
|
"getNewmlkem768Error" = "Lỗi khi lấy chứng chỉ mlkem768."
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "Lời yêu cầu"
|
"request" = "Lời yêu cầu"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "获取流量数据时出错"
|
"trafficGetError" = "获取流量数据时出错"
|
||||||
"getNewX25519CertError" = "获取X25519证书时出错。"
|
"getNewX25519CertError" = "获取X25519证书时出错。"
|
||||||
"getNewmldsa65Error" = "获取mldsa65证书时出错。"
|
"getNewmldsa65Error" = "获取mldsa65证书时出错。"
|
||||||
|
"getNewmlkem768Error" = "获取mlkem768证书时出错。"
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "请求"
|
"request" = "请求"
|
||||||
|
|
|
@ -266,6 +266,7 @@
|
||||||
"trafficGetError" = "取得流量資料時發生錯誤"
|
"trafficGetError" = "取得流量資料時發生錯誤"
|
||||||
"getNewX25519CertError" = "取得X25519憑證時發生錯誤。"
|
"getNewX25519CertError" = "取得X25519憑證時發生錯誤。"
|
||||||
"getNewmldsa65Error" = "取得mldsa65憑證時發生錯誤。"
|
"getNewmldsa65Error" = "取得mldsa65憑證時發生錯誤。"
|
||||||
|
"getNewmlkem768Error" = "取得mlkem768憑證時發生錯誤。"
|
||||||
|
|
||||||
[pages.inbounds.stream.general]
|
[pages.inbounds.stream.general]
|
||||||
"request" = "請求"
|
"request" = "請求"
|
||||||
|
|
Loading…
Reference in a new issue