[ss] fix 128 bit shadowsocks password #208

This commit is contained in:
Alireza Ahmadi
2024-10-22 22:11:14 +02:00
parent b019633c3f
commit 5105c138f7
3 changed files with 27 additions and 4 deletions
@@ -6,12 +6,10 @@
hide-details
:label="$t('in.ssMethod')"
:items="ssMethods"
@update:model-value="changeMethod($event)"
v-model="data.method">
</v-select>
</v-col>
<v-col cols="12" sm="6" md="4">
<v-text-field v-model="data.password" :label="$t('types.pw')" hide-details></v-text-field>
</v-col>
<v-col cols="12" sm="6" md="4">
<Network :data="data" />
</v-col>
@@ -19,12 +17,24 @@
<UoT :data="data" />
</v-col>
</v-row>
<v-row v-if="data.method.startsWith('2022')">
<v-col cols="12" sm="8">
<v-text-field
v-model="data.password"
:label="$t('types.pw')"
hide-details
append-inner-icon="mdi-refresh"
@click:append-inner="changeMethod(data.method)">
</v-text-field>
</v-col>
</v-row>
</v-card>
</template>
<script lang="ts">
import Network from '@/components/Network.vue'
import UoT from '@/components/UoT.vue';
import RandomUtil from '@/plugins/randomUtil';
export default {
props: ['direction','data'],
@@ -43,6 +53,15 @@ export default {
]
}
},
methods: {
changeMethod(ssMethod :string) {
if (ssMethod.startsWith('2022')) {
this.$props.data.password = ssMethod == "2022-blake3-aes-128-gcm" ? RandomUtil.randomShadowsocksPassword(16) : RandomUtil.randomShadowsocksPassword(32)
} else {
this.$props.data.password = ''
}
}
},
components: { Network, UoT }
}
</script>
+1 -1
View File
@@ -38,7 +38,7 @@ export namespace LinkUtil {
}
function shadowsocksLink(user: Client, inbound: Shadowsocks, addrs: any[]): string[] {
const userPass = user.config.shadowsocks?.password
const userPass = inbound.method == "2022-blake3-aes-128-gcm" ? user.config.shadowsocks16?.password : user.config.shadowsocks?.password
const password = [userPass]
if (inbound.method.startsWith('2022')) password.push(inbound.password)
const params = {
+4
View File
@@ -121,5 +121,9 @@ export function randomConfigs(user: string): Config {
export function createClient<T extends Client>(json?: Partial<T>): Client {
defaultClient.name = RandomUtil.randomSeq(8)
const defaultObject: Client = { ...defaultClient, ...(json || {}) }
// Add missing config
defaultObject.config = { ...randomConfigs(defaultObject.name), ...defaultObject.config }
return defaultObject
}